Я стараюсь изо всех сил достичь своего рода UnitOfWork против сохранения данных в текстовом формате. Без лишних объяснений я хотел бы сделать возможным выполнение двух запросов в одном и том же порядке.
Возьми это,
using (IDataUnitOfWork uow = new Data.SomeContext.Core())
{
CustomerRepo repo = new CustomerRepo(uow);
Data.Entities.Customer c = repo.GetCustomerById(191);
...
c.name = c.name.Replace("_", "");
//c.name = c.name + "_";
//uow.Save();
}
То, что я считаю, является очень ясным и верным способом выполнить задачу. Теперь у меня тоже есть другой контекст. В некоторых случаях эта задача также должна выполняться во втором контексте.
using (IDataUnitOfWork uow = new Provider.TheProviderContext())
{
CustomerRepo repo = new CustomerRepo(uow);
Data.Entities.Customer c = repo.GetCustomerById(191);
...
c.name = c.name.Replace("_", "");
//c.name = c.name + "_";
//uow.Save();
}
Этот контекст не основан на том же методе, но я думаю, что приведенный выше пример будет отражать то, что я пытаюсь сделать (и должен). На данный момент я могу видеть только этот способ решить ,,
using (IDataUnitOfWork uow = new Data.SomeContext.Core())
{
...
if (anything == true)
using (IDataUnitOfWork uow = new Provider.TheProviderContext())
{
...
}
}
Это выглядит как хороший и понятный способ работы (bcz вся информация уже известна второму «использованию». Поправьте меня, если я совершенно не прав здесь , потому что у меня есть только это при планировании пока. Но было бы ДАЖЕ ЛУЧШЕ, если бы я мог позвонить
using (IDataUnitOfWork uow = new BothProviders())
.. который в свою очередь вызывает обоих провайдеров и запускает задачи одновременно для каждого из них. Я читал о фабриках, но это немного сбивает с толку (пока). Мои навыки окончательно заканчиваются здесь сегодня, к сожалению, чтобы сказать ..