Czytałem wiele artykułów mówić o 3 szczeblami architekturę w C#, ale widzę, że:Jak wdrożyć 3 szczeblami architekturę w C#
Prawie używać Bussiness Logic Layer (BLL) jako mapowanie obiektowo odpowiedniej tabeli w bazie danych . Ten obiekt BLL ma kilka takich metod:
+
GetData()
: zwróć to;+
Update(this)
;+
Insert(this)
;+
Delete(this)
;Ten obiekt BLL wywołuje odpowiedni DAL (warstwa dostępu do danych), aby wykonać odpowiednią tabelę bazy danych.
- Myślę, że dzięki powyższym metodom możemy uzyskać rekord i zaktualizować go. Ale jeśli mamy wiele rekordów i chcemy umieścić je w zbiorze danych, jak możemy zaktualizować wszystkie rekordy? Czy musimy użyć pętli dla wszystkich rekordów, aby to zrobić?
- Ponadto w bazie danych, istnieje wiele tabel ze sobą powiązane, tak jak możemy umieścić je w zbiorze danych, upewnij stosunki i dodawać, usuwać rekordy jak przy użyciu
BindingSource
zCombobox
iDataGridView
? Jak możemy oddzielić kod w tej sytuacji?
Dziękuję bardzo. Czytałem 2 przykłady, mogę zrozumieć nieco podstawową architekturę 3 warstw działa. Ale udostępniają jedynie prosty przykład obiektu (użytkownika) .Jeśli użyjemy "DataSet" do wyświetlenia wszystkich rekordów, w jaki sposób możemy zaktualizować wszystkie zmienione rekordy w "DataSet", zapętlić wszystkie rekordy, czyż nie ?. A jeśli mamy wiele obiektów powiązanych ze sobą, to jest najlepszy sposób, aby wyświetlić dane i zaktualizować je razem! Czy możesz podać mi bardziej złożone przykłady! –
Oba wspomniane artykuły pozwalają, aby warstwa logiki biznesowej była zależna (podobnie jak odniesienie do) warstwy dal. To nie jest droga. Twój model biznesowy (aka model domeny) powinien stanowić centrum twojej aplikacji, reszta ma odniesienia do niego. Dobrą nazwą jest model cebuli. Google to, jest tego warte! – Maarten
Architektura cebuli - http://jeffreypalermo.com/blog/the-onion-architecture-part-1/ – Maarten