Tagi na forum.

Windows 14206 SQL Server 2132
sieci 6796 Windows XP 1921
SQL 6578 Outlook 1838
SBS 3868 Uprawnienia 1777
Windows 2003 2781 IIS 1636
Windows Server 2588 Office 1516
DNS 2315 Skrypt 1499

pokaż wszystkie tagi na forum

LINQ - rekordy z 2 tabel bez powtórzeń.

arkasper 2009-12-06 15:59:38
0
avatar
 
 
Mam dwie tabele:
- pierwsza ma pola ID, imie, nazwisko
- druga zawiera informacje o zdjęciach: ID, ID_uzytkownika, nazwapliku

Chcę pobrać listę użytkowników portalu z jednym zdjęciem, więc trzeba pobrać wszystkie rekordy w pierwszej tabeli i do każdego z nich jeden z drugiej.

Jak to zrobić przy pomocy LINQ ?
tagi: LINQ


djsowa  2009-12-06 18:24:16 #1
0
avatar
 
 
Tak to wygląda przy użyciu EF:
var sql = (from d in user
select new {d.user_name, d.photos.photo_value}).Distinct();

arkasper  2009-12-06 20:26:44 #1.1
0
avatar
 
 
Przedstawiona metoda nie działa.
Wydaje mi się że Distinct() porównuje całe rekordy, a w moim wypadku muszą być porównywane tylko ID aby otrzymać listę: Imię, Nazwisko, NazwaPliku (pierwsza napotkana w tabeli podrzędnej).
Obecnie imiona i nazwiska powtarzają się tyle razy ile zdjęć jest im przypisane.
Tzn. jeśli do użytkownika 1 jest 1 lub 0 fotek to wszystko działa ok, ale jeśli użytkownik ma 2 lub więcej fotek to na liście dane się powtarzają tylko za każdym razem z inną nazwą pliku

Udziel odpowiedzi

avatar
Treść wpisu:

Zaloguj się lub Zarejestruj się aby wykonać tę czynność.

Idź na górę strony