Linq Simple question: Comment sélectionner plus d'une colonne?
mon code est:
List<Benutzer> users = (from a in dc.Benutzer
select a).ToList();
J'ai besoin de ce code, mais je ne veux en sélectionner 3 le 20 Colonnes du "Benutzer"-Table.
Quelle est la syntaxe pour qui?
Vous avez un type
Benutzer
? Jamais considérée comme localisée à l'aide de C#? Liste<Benutzer> benutzer = (aus a in dc.Benutzer wähle a).ZuListe();
😉OriginalL'auteur Kovu | 2009-10-09
Vous devez vous connecter pour publier un commentaire.
Voici une expression de requête:
Ou en pointillé:
Noter que cette fonction retourne une liste de anonyme de type plutôt que les instances de
Benutzer
. Personnellement, je préfère cette approche sur la création d'une liste de partiellement peuplée cas, comme à l'époque personne qui traite avec l'partielle des instances doit vérifier si ce qu'ils venaient de trouver ce qui va être vraiment là.EDIT: Si vous voulez vraiment de construire des instances de
Benutzer
, et LINQ n'est pas de vous laisser le faire dans une requête (je ne sais pas pourquoi), vous pouvez toujours le faire:c'est à dire utiliser le type anonyme, tout comme un DTO. Notez que le retour de l'
Benutzer
objets ne seront pas associés à un contexte bien.Qu'entendez-vous par "typisite"?
Je veux que le type de Benutzer, n'est pas anonyme.
Vous pouvez si vous le fournir Benutzer ont constructeur sans paramètre public et setters pour les propriétés souhaitées. Ou et le constructeur qui s'inscrit dans le même but.
OriginalL'auteur Jon Skeet
Je pense que c'est ce que vous voulez si vous voulez faire le même genre de liste. Mais cela suppose que les propriétés que vous définissez le public, d'avoir setters.
Vous avez besoin d'une virgule pour séparer les champs, bien que je doute que c'est pourquoi il est casser
Je l'ai juste essayé sur ma machine avec un très semblables cas d'utilisation, et cela a fonctionné. Pouvez-vous coller l'erreur exacte?
Construction explicite du type d'entité 'DAL.Benutzer' dans la requête n'est pas autorisé. C'est l'erreur
Essayez de supprimer le
Benutzer
de la requête:select new { myCol = a.myCol, ... }
de construire un type anonyme.OriginalL'auteur qui
essayer:
mais maintenant, vous avez la liste des objet anonyme pas de Benutzer objets.
OriginalL'auteur TheVillageIdiot