2009-05-07 9 views
4

Ma stratégie consistait à maintenir la mise en page du projet propre. Étant donné qu'il s'agit d'un projet datalayer, et que j'aurai un fichier de classe pour chaque entité concernée, j'ai pensé mettre le .dbml dans son propre répertoire. Il s'avère que la localisation de votre fichier .dbml dans un sous-répertoire le transforme en un espace de noms de niveau inférieur.Visual Studio et LINQ: placer le fichier DBML dans un répertoire distinct dans le projet

Ceci est un projet de bibliothèque de classe C#.

Des indications permettant de désactiver cette fonctionnalité et d'accéder au nom LinqToSQL dbml datacontext sans avoir à taper le nom du répertoire pour accéder aux classes LinqToSql actuelles?

Répondre

9

Il s'avère que vous devez trouver les propriétés de votre DBML sur le canevas de conception LinqToSql.

  • Clic droit -> Propriétés Recherchez l'espace de noms contextuel.
  • Entrez l'espace de noms dans lequel vous prévoyez d'avoir vos classes DataContext.
  • Vous trouverez ci-dessous l'espace de noms d'entités.
  • -ce que les mêmes

Les utilisateurs de ReSharper: vous avez la possibilité d'afficher les propriétés de votre sous-répertoire de DBML et y placer l'attribut d'espace de noms.

3

Si vous allez dans le répertoire dans votre solution et affichez les propriétés de ce répertoire, vous verrez l'attribut: fournisseur Namespace = true

Set à false

Vous pouvez ensuite mettre à jour l'espace de noms correspondre à l'espace de noms racine dans votre fichier DBML. Maintenant, chaque fois que vous ajoutez de nouveaux fichiers dbml, il conservera l'espace de noms basé sur le dossier racine.

+1

Hmmm .... où est-ce que je verrais cet attribut? Lorsque je clique sur un sous-dossier dans mon projet de bibliothèque de classes, tout ce que je vois dans la fenêtre "Propriétés" est "Nom du dossier". VS 2008 SP1 –

+1

Intéressant, j'utilise VS 2008 SP1 et j'ai le nom de dossier et le fournisseur d'espace de noms ... J'ai installé resharper, je me demande si cela l'a ajouté ... – CodeLikeBeaker

Questions connexes