Cela fait longtemps que j'écris une seule ligne de code alors, s'il vous plaît, soyez patient si je pose une question stupide.C#: 'IEnumerable <Student>' ne contient pas de définition de 'Intersect'
Même si l'IntelliSense affiche la méthode Intersection après Noms, j'obtiens l'erreur suivante lorsque j'essaie de comparer deux IEnumerables. J'essaie de comparer le résultat d'une requête de base de données à une liste ordonnée dans le code HTML.
'IEnumerable' ne contient pas une définition pour 'Intersection' et la meilleure méthode extension de surcharge 'Queryable.Intersect (IQueryable, IEnumerable)' nécessite un récepteur de type 'IQueryable'
namespace Data.Repositories
{
public class StudentsRepository
{
public class Student
{
public string FullName { get; set; }
}
public static IEnumerable<Student> GetData(string CardNumber, string Section)
{
// FullName varchar(300) in Database
return CommonFunctions.ExecuteReader1<Student>(QryStudentSectionDetails(CardNumber, Section)).AsQueryable();
}
}
}
namespace Tests.ActionsLibrary.StudentPaper
{
public class StudentActions:TestBase
{
bool IsMatch = false;
// Get Names from DataBase
IEnumerable<Student> Names = GetData(CardNumber, Section);
// Get Names from Ordered list in HTML
IEnumerable<IWebElement> OrderedList = driver.FindElements(By.XPath("//li[@ng-repeat='Names']"));
if (Names.Count() == OrderedList.Count() && Names.Intersect(OrderedList).Count() == OrderedList.Count()) // The error is shown here.
{ IsMatch = true; }
Je me demande ce que je fais mal. Toute aide est la bienvenue. Merci.
A la fin du code ressemble à ceci:
IEnumerable<string> Names = GetData(CardNumber, Section).Select(s => s.FullName);
IEnumerable<string> OrderedList = driver.FindElements(By.XPath("//li[@ng-repeat='Names']")).Select(i => i.Text);
Merci, beaucoup pour votre aide.
Comment supposez-vous qu'il se croiserait entre 'Students' et' IWebElements'? Vous pourriez avoir un problème différent en plus de cela, mais c'est en effet quelque chose que vous devriez probablement prendre en charge. – SimpleVar