2012-10-14 3 views
0

i ont cette requête (LINQ à l'entité):Impossible de convertir implicitement le type 'NoavaranModel.Student []' à 'string []'

var query = from p in dbContext.Students 
         where p.Type == "پیش ثبت نام" && p.Approved == false 
         select p; 

et comme vous le voyez, je veux sélectionner tous les élèves ci-dessus condition, je veux convertir Résultat de tableau avec ce code:

string[] strNumbers = dbContext.Students.Where(p=>p.Type=="پیش ثبت نام" && p.Approved==false).ToArray(); 

mais au-dessus du code its'not travail: "Impossible de convertir implicitement le type 'NoavaranModel.Student []' à 'string []'" et quand J'utilise ce code:

string[] strNumbers = dbContext.Students.Where(p=>p.Type=="پیش ثبت نام" && p.Approved==false).Cast<string>().ToArray(); 

J'ai l'erreur suivante: "Impossible de convertir le type 'NoavaranModel.Student' en type 'System.String'. LINQ to Entities ne prend en charge que les types de primitive Entity Data Model. . »

alors je veux passer strNumbers au-dessous de Methode:..

Utility.SendMessageForStudents(strNumbers); 

Merci dans votre Advise

Répondre

4

Vous devez retourner la chaîne au lieu d'objet étudiant qui where retourne Vous pouvez sélectionner . numéro d'étudiant en utilisant la méthode de sélection des étudiants a Suppose StudentNumber

string[] strNumbers = dbContext.Students.Where(p=>p.Type=="پیش ثبت نام" && p.Approved==false).Select(c=>c.StudentNumber).ToArray(); 
+0

merci, comment puis-je mettre le nom de l'étudiant dans le message Utility.SendMessageForStudents (strNumbers, IEMS),? par exemple « Cher 'Nom d'étudiant' " –

Questions connexes