Я создал базовый DAL, который может извлекать данные, и бизнес-уровень с несколькими объектами, используя этот DAL. После того, как я сопоставил данные с бизнес-объектами и сделал с ними что-то, я также хочу записать данные обратно в базу данных. Некоторые из бизнес-объектов имеют много свойств, поэтому передача каждого значения бизнес-объекта в качестве параметра методу соответствующего сервиса данных невозможна.
Другие способы, о которых я думал:
передать бизнес-объект в соответствующую службу данных, там выполнить SP со всеми значениями в качестве параметров. - отстой, потому что я должен передать бизнес-объект в DAL (нарушая разделение) и, вероятно, в итоге получит SP с> 50 параметрами
создать пустой (?) Набор данных в бизнес-объекте, заполнить его значениями из бизнес-объекта, передать этот набор данных в службу данных и обновить базу данных с помощью адаптера данных. Я думал о создании пустого набора данных с строкой «... WHERE 0» -SQL. Это будет хорошей практикой?
Впервые я делаю что-то подобное. Последнее звучит лучше для меня, но, может быть, есть другие, лучшие подходы? Или первый лучше по некоторым причинам, я не знаю?
Большое спасибо!
[edit:] Я не могу использовать LinQ2SQL, потому что я использую C # Express (который поддерживает только запросы к локальным БД, а моя удаленная)