2010-08-24 5 views
2

En utilisant Linq to SQL et les capacités de génération automatique de DBML, les relations de clé étrangère créent EntityRefs dans le fichier du concepteur DBML. Par exemple:Contrôle de la création DBML EntityRef dans DBML avec plusieurs clés étrangères

private int _USStateId; 

private EntityRef<USState> _USState; 

Cependant, si j'ai le besoin d'une table avec de nombreuses relations FK à la même table, comment puis-je contrôler les noms autogénérées? Par exemple, pour une voiture enquête avec trois clefs étrangères dans un Évaluations table, je reçois

private int _BodyRatingId; 
private int _ColorRatingId; 
private int _PerformanceRatingId; 

dans ma table de voiture avec

private EntityRef<Rating> _Rating; 
private EntityRef<Rating> _Rating1; 
private EntityRef<Rating> _Rating2; 

Comment puis-je, dynamique ou autrement, le contrôle EntityRef nommant pour indiquer qu'ils se rapportent à un domaine particulier?

Merci!

+0

Je viens de trébucher sur cette question. J'ai posé une question très similaire hier et j'ai eu une réponse. Voir http://stackoverflow.com/questions/6471330/is-there-any-way-to-control-the-names-of-properties-generated-by-linq-to-sql –

Répondre

1

Salut Je ne sais pas si la question est toujours valable, mais dans le cas où tout le monde a besoin:

Vous pouvez ajouter une classe partielle à votre projet avec le même nom que votre table de voiture et ajouter de nouvelles propriétés:

public Rating BodyRating 
    { 
     get 
     { 
      return this._Rating.Entity; 
     } 
    } 
Questions connexes