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
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 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
Si je suis manager, ça marche
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
Mais si je ne le suis pas je souhaite n'afficher qu'un certain profil de contact
et là mon filtre se plante surmsg error :
Code : Sélectionner tout - Visualiser dans une fenêtre à part rpt1.DataBind()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 ...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.
Merci d'avance
Partager