2009-04-16 5 views
2

J'ai obtenu une entité appelée Proveedor sur mon contexte de données. Une propriété appelée Proveedors est générée pour que le contexte de données représente une collection de Proveedor. Je le renommer en Proveedores, l'orthographe correcte en espagnol. Mais dès que je fais quelque chose sur le modèle (non lié à l'entité Proveedor) et que je le reconstruis, il le renomme à Proveedors.Arrêter linq à Sql de renommer les propriétés du DataContext après que je les renommer

Je ne veux pas désactiver pluralisation veux juste qu'il arrête de renommer mes renomme :)

Merci

Répondre

2

Lorsque vous modifiez le fichier dbml de modèle de données, les classes Linq to SQL sont entièrement créées à partir de zéro. Toutes les modifications que vous apportez aux fichiers de classe seront remplacées.

Changer les règles de pluralisation devrait être fait en changeant la génération de code, mais je ne sais pas si cela est possible.


Vous pouvez modifier le nom généré en cliquant avec le bouton droit sur la table dans la fenêtre du concepteur dbml et en sélectionnant les propriétés. Il y a un champ appelé 'nom' avec lequel vous devriez pouvoir définir un nom personnalisé.

En outre: ceci n'est pas directement pertinent pour ce problème particulier, mais si vous souhaitez ajouter des modifications aux classes générées, elles sont définies comme des classes partielles. Vous pouvez donc ajouter des méthodes aux classes en créant une classe partielle séparée.

+0

Merci de vérifier mes soupçons. –

+0

Vérifiez également que le champ Source de DBML est renommé en tant que nom propre de la colonne de votre base de données. – Jerreck

0

Où renommez-vous? Si vous modifiez le code C# généré, il sera écrasé comme vous l'avez vu.

Vous devez le modifier dans le fichier dbml. Ouvrez ce fichier. Sélectionnez la propriété, puis ouvrez le panneau de propriétés et modifiez-le.

+0

J'utilise la vue de classe et en sélectionnant le DataContext puis en faisant défiler jusqu'à ses propriétés, faites un clic droit sur la propriété et sélectionnez Renommer, cela fait un remplacement sur le code. C'est la façon la plus efficace de le faire, j'ai trouvé jusqu'à présent. Je ne peux pas trouver un moyen de le faire à partir de la fenêtre Propriétés. –

+0

@Luis: Oui, vous ne pouvez pas le faire dans le concepteur. Vous devrez en éditer les propriétés à partir du fichier .dbml ou bien faire quelques changements avec des classes partielles. –

+0

@Jack Merci, il me semble que je devrais configurer mon .dbml complètement et ensuite renommer cette entité et elle tiendra. –

Questions connexes