Я занимаюсь самообучением архитектуры MVVM-light - EF Application. Я пытаюсь создать приложение, подобное продукту или квитанции.У меня есть Db / EF с таблицей / сущностью продукта и квитанции в отношении многих ко многим.тогда у меня есть DAL, который просто использует Linq для выполнения простого CRUD.
вопрос в том, где и как поместить мою бизнес-логику в это приложение.
пара идей пришла на ум
опция 1 - создать ReceiptBo (бизнес-объект Receipt), который наследует класс Entity Receipt и Icollection (ProductBo), класс ReceiptBo будет отвечать за добавление Product, вычисление итогов и промежуточных итогов и вызов Dalдля вставки.Возможно, эта опция показалась немного излишней.
option 2 - вывести методы вычисления в сгенерированные объекты Entity, используя частичные классы и просто используя BuisnessLayer для вызова Dal.это сделало бы классы Buisnesslayer устаревшими, на мой взгляд, и я не уверен, что классы сущностей вообще следует использовать для бизнес-логики?
опция 3 - делать бизнес-классы, но не беспокоиться об использовании наследованияПросто добавьте продукты в Entity, сделайте там вычисления и позвоните в Dal для вставки.который кажется простым, но не очень элегантным.
вариант 4 - ничего из вышеперечисленного и я не знаю
сейчас я не использую WCF, но идея в том, что я хочусделайте это приложение слабосвязанным, чтобы его было легко реализовать и расширить.
также я немного запутался в том, что такое бизнес-уровень.в некоторых примерах он больше используется как Dal, который также выполняет вычисления, тогда как другие говорят, что это не сделано.
некоторая помощь будет очень полезна.THX
PS: извините за мой плохой английский