namespace MyMain.Controllers
{
public class Home
{
**//Open First Db Connection Here**
public MyDbConEntities db = new MyDbConEntities();
public ActionResult Index()
{
var user = db.User.FirstOrDefault();
**//Open second Db Connection Here**
using (var myTask = new MyTask1())
{
myTask.Execute(user.Id);
}
}
}
}
namespace MyMain.Task
{
private MyDbConEntities db = new MyDbConEntities();
public class MyTask1 : IDisposible
{
private int Id;
public MyTask1(int id)
{
db = new MyDbConEntities();
Id = id;
}
public void Execute()
{
**//Open thidr Db Connection Here**
using (var mySubTask = new MySubTask1())
{
mySubTask.Execute(Id);
}
db.UserDetails.FirsOrDefault(x => x.UserId = Id)
}
public Dispose()
{
db.Dispose();
}
}
}
Привет, мой вопрос об этом Open Multiple DbCon в то же время.Несколько объектов DbCon
В приведенном выше коде я попытался показать свою идею. Моя цель состоит в том, чтобы на каждом отдельном классе задач открывался DbCon. Но иногда я вызываю одну задачу из другого класса задачи.
Поэтому иногда в течение короткого времени можно открыть несколько dbCon. Я не хочу отправлять объект MyMain/Home Class db в качестве экземпляра для класса задач. Я думал об ошибке обработки дела. Например, когда ошибка произошла в MySubTask1 (если я использую объект db как экземпляр, dbCon может быть закрыт, и вся система может быть сбой.
Итак, я пытаюсь реализовать это ... Что вы думаете о моих идеях?
можете ли вы дать мне ключ ?. Этот метод может быть проблема на сервере для огромной базы данных и пользователей.
Что собирается использовать UnitOfWork с этим методам?
лет u может с UnitOfWork передать ваш DbContext для лучшей производительности. реализация Контекст на шаблон запроса –
Что вы сказали так ясно? Я понимаю, что эта единица работы может быть использована. Кроме того, мои идеи не будут создавать проблемы, когда я опубликую как выпуск на сервере? Поэтому я могу открыть несколько dbcon одновременно. Не так ли? Большое спасибо за ваш интерес. –
почему вы хотите сделать эту работу? –