0
我已经开始设计一个相当大的系统的一部分,并想知道使用存储库的最佳方式是什么。将库实例注入类
哪种方法会更好:
static void Main(string[] args)
{
var dataRepository = new DataRepository();
var classA = new ClassA(dataRepository);
classA.Save();
}
public interface IDataRepository
{
void Save(ClassA myInstance);
}
public class DataRepository : IDataRepository
{
public void Save(ClassA myInstance)
{
//Do some stuff
}
}
public class ClassA
{
private IDataRepository _dataRepository;
public ClassA(IDataRepository dataRepository)
{
_dataRepository = dataRepository;
}
public void Save()
{
_dataRepository.Save(this);
}
}
或者我应该做的:
static void Main(string[] args)
{
var dataRepository = new DataRepository();
var classB = new ClassB();
dataRepository.Save(classB);
}
public interface IDataRepository
{
void Save(ClassB myInstance);
}
public class DataRepository : IDataRepository
{
public void Save(ClassB myInstance)
{
//Do some stuff
}
}
public class ClassB
{
//some stuff
}
或者有没有其他的方式,我会这样更优雅?
如果你想要纯度,那么你创建一个UOW类并将库传递给它。你打算如何运行它? –
这可能是Dapper – Draco
我只想说,只有在真正需要它的时候才会介绍一些东西 –