Я пытаюсь решить, как обрабатывать вставки и удаления с помощью MVC3 и Entity Framework 4.2
Моя настройка: веб-сайт обращается к моему сервисному уровню, который использует шаблон репозитория для выборки и возврата моей модели (POCO)объекты.Решение разделено на следующие проекты:
DAL(Data)
BAL(Service layer in here)
MODELS (Poco objects)
WEBSITE (presentation)
Моя проблема: мне нужно иметь возможность контролировать добавление и удаление объектов и запускать любую бизнес-логику, которая мне нравится.Это должно быть сделано на уровне обслуживания.
Пример проблемы: у меня есть класс Account с ICollection объектов AccountContact.Каждый объект AccountContact имеет ICollection объектов PhoneNumber.Я предполагаю, что это метод Service примерно такой
AddAcountContact(Account account, AccountContact accountContact){
//Run business logic to ensure that this account contact can be added
account.AccountContacts.Add(accountContact);
unitOfWork.SaveChanges();
}
DeleteAccountContact(Account account, AccountContact accountContact){
//Run business logic to ensure that this account contact can be deleted
account.AccountContacts.Remove(accountContact);
unitOfWork.SaveChanges();
}
К сожалению, у меня нет способа принудительно добавлять и удалять через мой класс Service.Разработчик может легко вставить / удалить непосредственно из уровня представления.У кого-нибудь есть какие-либо идеи или известны общие решения этой проблемы?Возможно, я что-то не так делаю ....