jointure N to N avec entity framework
bonjour
j'ai deux tables (Service, User) avec une liaison N to N et une troisième (ServiceUserDiff) qui lie les 2 tables
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| public partial class Service
{
public int CodeService { get; set; }
public string DesignationService { get; set; }
public string NomResponsable { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<ServiceUserDiff> ServiceToUserDiff { get; set; }
}
public partial class User
{
public int UserID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
public partial class ServiceUserDiff
{
public Nullable<int> IdUserDiffService { get; set; }
public Nullable<int> IdServiceUserDiff { get; set; }
public Nullable<int> AttributaireON { get; set; }
public int IdDiff { get; set; }
public virtual Service ServiceDiff { get; set; }
public virtual User UserDiff { get; set; }
} |
dans ma table ServiceUserDiff j'ai l'identité d'un utilisateur et je veux récupérer le FirstName et le LastName a partir de la table user
j'ai ecris la fonction suivante dans mon Apicontroller
Code:
1 2 3 4 5 6 7 8
| public ServiceUserDiff GetAllServiceUserDiff(int idUser)
{
var users= (from a in bd.ServiceUserDiff
where a.IdServiceUserDiff == idUser
join c in bd.User on a.IdUserDiffService equals c.UserID
select new { c.FirstName, c.LastName }).Distinct();
return users;
} |
le programme ne se génère pas car il me sort au niveau return users le message suivant
Citation:
impossible de convertir implicitement le type system.linq.iqueryable en <<anonymous type string firstname,string lastname >> to DATA.ServiceUserDiff
merci de votre aide