2009-03-15 15 views

Odpowiedz

5

Nie LINQ problem. Jeśli potrzebujesz ich do swojego schematu, użyj ich. Jeśli nie, nie rób tego. Tak czy inaczej, LINQ poradzi sobie z twoim schematem.

Jednym z obszarów, w którym LINQ do SQL nie radzi sobie dobrze, są tabele mapowania multy kolumna/klucz, które są używane do łączenia wielu do wielu relacji, ale nie powiedziałbym, że to strickly należy do kategorii, która adresuje twoje pytanie. Nadal możesz wykonywać operacje CRUD na tabeli odwzorowań w LINQ, ale LINQ nie może przejść relacji prezentowanej przez wiele do wielu tabel odwzorowań. (LINQ działa dobrze z jednym do jednego i jednym do wielu tabel.)

Nie mogę mówić do żadnego problemu z Entity Framework, ale znowu, byłbym bardzo zaskoczony, gdyby EF miał jakiekolwiek problemy z wielokolumnową/tabele wieloblokowe.

+0

Właściwie to był problem dotyczący wielu tabel relacji, dzięki –

0

Jeśli ma to sens w Twojej domenie, aby mieć klucz złożony z wielu kolumn, użyj go. W przeciwnym razie użyj zwykłej kolumny tożsamości jako zastępczego klucza podstawowego.

EDYCJA: taka była ogólna wskazówka i nie uwzględnianie technicznych aspektów implementacji przy użyciu LINQtoSQL. Mogą być interesujące:

How to: Handle Composite Keys in Queries (LINQ to SQL)

LINQ To SQL Samples

Linq to SQL DTOs and composite objects

+0

Domyślam się, że to oznacza, że ​​Linq do SQL może obsługiwać klucze kompozytowe bez rozpadu lub dodatkowego wysiłku? –

Powiązane problemy