Mam wiele do wielu relacji zdefiniowane tak:Entity Framework - odpytywanie wiele-do-wielu tabeli relacji
Employees
--------------
EmployeeID (PK)
Roles
--------------
RoleID (PK)
EmployeeRoles
--------------
EmployeeID (PK, FK)
RoleID (PK, FK)
Próbuję uzyskać listę pracowników, biorąc pod uwagę listę lub RoleIDs:
private MyDBEntities _entities;
public SqlEmployeesRepository(MyDBEntities entities)
{
_entities = entities;
}
public IQueryable<Employee> GetEmployeesForRoles(int[] roleIds)
{
// get employees
}
Ale jeśli spróbować i zrobić _entities.EmployeeRoles
, nie ma EmployeeRoles obiektu. Moja edmx wygląda następująco:
Więc to rozpoznawanie relacji między dwiema tabelami, ale to nie jest stworzenie obiektu jednostki za EmployeeRoles.
Jak uzyskać oddzielną listę pracowników z listą identyfikatorów ról?
Lol, chciałem to opublikować jako alternatywę dla twojego pierwszego rozwiązania (z 'Distinct' itp.), Ale teraz nie ma już żadnej alternatywy. Czy możesz zostawić swoje pierwsze rozwiązanie jako kolejną opcję w swojej odpowiedzi. To był interesujący sposób, czy coś było z nim nie tak? – Slauma
@Slauma: Tak, to jest alternatywa - ale wydawało mi się to bardziej oczywiste po przyjrzeniu się problemowi, więc podrapałem pierwsze podejście - pozwól, że znów je wykopię ;-) – BrokenGlass