Co to jest POCO w Entity Framework? [Zamknięte]

82

Dopiero co zacząłem uczyć się POCO, ale nie mogę zrozumieć jego zastosowania i zalet. Nie pomogło mi nawet skorzystanie z łącza do stackoverflow.

co to jest Entity Framework z POCO

Czy ktoś może wyjaśnić użycie POCO na prostym przykładzie?

Społeczność
źródło
5
Myślę, że najlepszym sposobem na zrozumienie tego jest przykład: pratapreddypilaka.blogspot.com.au/2011/12/…
Jeremy Thompson
Nie jestem pewien, jakiej odpowiedzi oczekujesz, a która nie została jeszcze podana w Twoim linku. Jeśli po ich przeczytaniu nadal nie rozumiesz, być może, jak sugeruje Jeremy, musisz się uczyć działając.
Ant P

Odpowiedzi:

103

POCO (zwykłe stare obiekty CLR) to po prostu elementy Twojej domeny. Zwykle, gdy używamy struktury jednostek, jednostki są generowane automatycznie dla Ciebie. To świetnie, ale niestety te jednostki są przeplatane funkcjonalnością dostępu do bazy danych, co jest wyraźnie sprzeczne z SOC (Separacja obaw). POCO są prostymi jednostkami bez funkcji dostępu do danych, ale nadal zapewniają możliwości wszystkich funkcji EntityObject, takich jak

  • Powolne ładowanie
  • Śledzenie zmian

Oto dobry początek

Framework POCO Entity

Możesz również tak łatwo generować POCO z istniejącego projektu Entity Framework przy użyciu generatorów kodu.

Generator kodu DbContext EF 5.X

Prabhu Murthy
źródło
2
Twoje łącze „POCO Entity Framework MSDN Part-I” jest uszkodzone. Czy to teraz? msdn.microsoft.com/en-us/library/dd456853(v=vs.100).aspx
Aske B.
@AskeB. dzięki zaktualizowałem link. to ten
Prabhu Murthy
Zawsze odnosiłem się do POCO jako „zwykłych starych obiektów C”, czy to jest złe, czy po prostu inne?
Halter
2
@Halter „Zwykłe stare obiekty C #” lub (jak Prabhu) powiedział „obiekty CLR”, ponieważ ta sama koncepcja dotyczy języka VB i F #.
Nate Barbettini