Bonjour,

Voilà, j'ai une société avec des contacts (personnel de la société en français)

Je souhaite avoir une liste des tous les contacts de la société classer par order alphabétique. J'ai donc fait une fonction (au passage si quelqu'un peut me dire si on peut faire du tri du style MaSoc.Contacts.orderby ...)
Je reviens à ma question de départ
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
Public Shared Function GetContacts(ByVal IdSoc As Integer, ByVal LesDatas As kickoff2012Entities, Optional ByVal Status As String = "") As Object
        Try
            Dim Query = (From Cont In LesDatas.Contacts Where Cont.IDSociete = IdSoc Order By Cont.Nom, Cont.Prenom Select Cont)
            If Status <> "" Then Query = Query.Where(Function(a, b) a.StatutInvitation = Status)
            Return Query
        Catch ex As Exception
            Return Nothing
        End Try
    End Function
Voici l'appel de ma fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
Private Sub BindListeCollaborateurs()
        Dim soc As Societe = SocieteClass.GetSociete(ConnectedUser.IDSociete, LesDatas)
        Dim lstCont
        If ConnectedUser.EstManager Then
            Page.Title = "Liste des collaborateurs " & soc.Libelle
            lstCont = SocieteClass.GetContacts(soc.IDSociete, LesDatas)
        Else
            Page.Title = "Liste des collègues invités " & soc.Libelle
            lstCont = SocieteClass.GetContacts(soc.IDSociete, LesDatas, "A")
        End If
 
        rpt1.DataSource = lstCont
        rpt1.DataBind()
 
    End Sub
Si je suis manager, ça marche
Mais si je ne le suis pas je souhaite n'afficher qu'un certain profil de contact
et là mon filtre se plante sur msg error :
LINQ to Entities ne reconnaît pas la méthode « System.Linq.IQueryable`1[KickOff.Contact] Where[Contact](System.Linq.IQueryable`1[KickOff.Contact], System.Linq.Expressions.Expression`1[System.Func`3[KickOff.Contact,System.Int32,System.Boolean]]) », et cette dernière ne peut pas être traduite en expression de magasin.
Je dois avouer être un gros débutant sur ces clauses where et je ne les compends pas très bien. Si quelqu'un pouvait m'aider en m'expliquant un peu le fonctionnement ...

Merci d'avance