BLL, DAL, OBJ и 3-х уровневая архитектура
Мой вопрос о трехслойной архитектуре.
Мой проект вкратце похож на приведенный ниже, однако, что меня раздражает, когда я вставляю новый столбец в свою базу данных, я должен обновить все эти поля, кроме BLL. На уровне представления я создал OBJ, а также внутри DAL, плюс внутри DAL есть SQL-запрос. Я должен обновить все эти поля вручную.
Если я сделаю этонормальный' Кстати, я помещаю все это в слой представления и обновляю все в одном месте.
Правильно ли я применяю эту трехуровневую архитектуру и каковы преимущества использования этой многоуровневой архитектуры?
Мой второй вопрос:
Внутри DAL я собираю данные через _view. Что мне интересно, я должен написать еще один BOboj для каждого представления? У меня уже есть класс BOboj, но он нет содержит все поля.
При вставке данных я должен использовать мой BOboj, однако при перечислении данных я использую представления, в этом случае я должен создать другой класс BOboj_view для каждого представления или что-то еще ?? что такое легкий способ сделать это?
например; У меня есть 20 представлений и 40 классов, которые сопоставлены с каждой таблицей на сервере SQL. Мои представления собирают различные таблицы данных (что означает разные объекты). Должен ли я создать еще 20 классов, кроме 40, которые представляют представление?
OBJ
class BOboj {
private int _PId;
private string _Name;
.......
.......
}
DAL
BOboj_DAL {
public bool Add(BOboj obj)
{
using (SqlConnection con = Connect.connect)
{
string sql = "insert into Persons (Id,Name,
.......
.......
}
BBL
BOboj_BLL {
.......
.......
public bool Add(BOboj_DAL obj)
{
BOboj_DAL bb_dal = new BOboj_DAL();
try
{
return bb_dal.Ekle(obj);
}
catch (Exception)
{
throw;
}
finally { bb_dal = null; }
}
.......
.......
}
Пресантаон Слой
protected void Add(object sender, DirectEventArgs e)
{
BOboj_BLL bll_= new BOboj_BLL ();
BOboj obj_ = new BOboj
{
Name = Name.Text,
..............
...............
};
bll_.Add(obj_ );
}
Спасибо.