2010-10-18 9 views
0

Le LINQ suivant pour NHibernate (utilisant NHibernate 3.0) les résultats dans un System.InvalidOperationException être jeté avec le message « l'opérateur binaire égal n'est pas défini pour les types de System.Collections.Generic.IList`1 [System.Int32] 'et « System.Int32 » »NHibernate LINQ throws "L'opérateur binaire Equal n'est pas défini pour les types 'System.Collections.Generic.IList`1 [System.Int32]' et 'System.Int32'"

public IEnumerable<ProjectSummary> GetProjects(IList<int> clients) 
{ 
    using (var session = _sessionManager.OpenSession()) 
    { 
     var q = from p in session.Query<Project>() 
       where clients.Contains(p.Client.Id) 
       select new ProjectSummary() 
       { 
        ProjectId = p.Id, 
        Active = p.Active, 
        ClientId = p.Client.Id, 
        Name = p.Name 

       }; 

     return q.ToList(); 
    } 
} 

Répondre

0

Utilisez List<int> au lieu de IList<int>