2010-10-05 5 views
1

J'ai une vue qui est une composition de plusieurs sources (en lecture seule), donc aucune des clés n'est unique. Puis-je créer une clé à utiliser dans Linq-to-sql, ou devrais-je simplement créer une colonne composite dans ma vue qui est une concaténation de toutes les clés.linq to sql: comment créer une clé dans orm?

+0

Je viens de créer une clé concaténée dans la vue ... qui fonctionne, je me demandais juste s'il y avait un moyen de le faire dans l'orm –

Répondre

0

Vous n'êtes pas obligé de le faire si vous ne le souhaitez pas. Linq to SQL ne requiert que des clés primaires lorsque vous souhaitez mettre à jour ou insérer des données, et je suppose que vous ne le souhaitez pas dans une vue.

Vous pouvez utiliser un simple où la déclaration avec toutes vos clés dans Pour sélectionner plusieurs lignes:

from item in dc.SomeView 
where item.Key1 = 500 && item.Key2 == "abc" && item.Key3 == 16 
select item 
+0

Ahh, oui c'est parce que j'utilise un service de domaine qui cause mes problèmes. Il faut que vous ayez une clé primaire définie –

0

En fin de compte, je devais créer une clé concaténée dans la vue ..

+0

Ceci est vraiment un commentaire, pas une réponse à la question. Veuillez utiliser "ajouter un commentaire" pour laisser un commentaire à l'auteur. –

+0

@RostyslavDzinko: il est l'auteur! –