2012-06-02 21 views
5

Lubię pracować z frameworkami podmiotu z wielu powodów - łatwość użycia projektanta podmiotu, moc linq i łatwość wiązania. Od czasu do czasu chcę zbudować prostą aplikację, która nie musi korzystać z bazy danych, ale nadal musi pracować z danymi i wyświetlać je na ekranie, w siatkach itp., Więc chciałbym po prostu utworzyć szybki model EF i użyć go do to, ale nie wydaje się działać bardzo dobrze, po prostu używać go do danych lokalnych.Entity Framework bez bazy danych

Moje pytanie brzmi - czy istnieje poprawne użycie EF do pracy z danymi lokalnymi, a może po prostu serializuje/deserializuje cały kontekst do pliku? A może to zbyt wielki wysiłek, by zrobić coś profesjonalnie? Używałem datasets w ten sposób, wraz z Linq do zestawu danych, i to działa dobrze ... Więc może to nadal jest lepszy sposób, aby przejść do tego scenariusza?

+0

Czy bierzesz za pomocą jakiegoś wbudowaną bazę danych? Jak np. Firebird Embedded, który obsługuje EF? To byłoby IMO łatwiejsze. –

Odpowiedz

0

Nie wiem, co masz na myśli przez "dane lokalne" dokładnie (brzmi jak to nie jest baza danych), ale myślę, że część datasets vs. ef jest (dla mnie) prawdziwym pytaniem.

EF jest świetny, gdy trzeba modelować solidną logikę biznesową, wdraża wzór Modelu Domeny, korzystając z Projektowania opartego na Dziedzinie, itp: w zasadzie każdy scenariusz, w którym wzorzec Tabeli lub wzór Aktywnego Zapisu jest niewłaściwy.

Kiedy wystarczy wyświetlić niektóre siatki danych, a logika biznesowa jest bardzo prosta, zestawy danych są zdecydowanie drogą do zrobienia (według mojego doświadczenia).

+0

Tak, powinienem wyjaśnić - pracować z danymi bez bazy danych, tzn. Z pamięci. Zasadniczo chciałbym zrobić to, co robiłem wcześniej w zestawach danych, ale użyć kodu EF, aby był bardziej kompatybilny, jeśli/kiedy chcę połączyć go z DB później. –

+1

Można utworzyć model encji za pomocą projektanta lub najpierw kodu, bez istniejącej bazy danych; również EF jest "in-memory" w tym samym znaczeniu, co zbiór danych. Jeśli twoje prawdziwe pytanie brzmi "Jak używać EF w magazynie danych innym niż baza danych (np. XML)?" następnie spójrz na ten wpis SO: http://stackoverflow.com/questions/608477/entity-framework-with-xml-files –

+0

Tworzę podmioty korzystające z projektanta, ale gdy próbuję utworzyć kontekst, nie powiedzie się z brak połączenia z bazą danych. może jest jednak sposób, aby je wykorzystać? –

Powiązane problemy