Я использую asp.net mvc и каркас сущностей. У нас есть уровень доступа к данным и бизнес-уровень. Теперь, поскольку доступ к данным выполняет все запросы, мне нужно создать объект доступа к данным в классах бизнес-уровня. Теперь я не уверен, должен ли я создавать только один объект или каждый раз создавать его локально. Вот пример -
Первый путь -
class Employee_Business
{
public Employees GetEmployee()
{
DataAccess dao= new DataAccess();
return dao.GetEmployees();
}
public Employee GetEmployee(int id)
{
DataAccess dao= new DataAccess();
return dao.GetEmployee(id);
}
}
Второй путь -
class Employee_Business
{
DataAccess dao;
public Employee_Business()
{
dao = new DataAccess()
}
public Employees GetEmployee()
{
return dao.GetEmployees();
}
public Employee GetEmployee(int id)
{
return dao.GetEmployee(id);
}
}
Также еще один вариант - я мог бы сделать некоторые методы статическими на уровне DataAccess. В этом случае не было бы инстанцирования. Но я не знаю о проблемах, которые это может вызвать. Также я слышал о паттерне Синглтона, но не знаю, действительно ли это нужно в таком простом сценарии. Я просто хочу узнать лучшие практики в этом случае. Я уверен, что все сделали это, пожалуйста, просветите меня, спасибо!