我有很多对象需要数据库访问的方法.我们正在寻求进行单元测试,但是如果可能的话,我们希望避免使用模拟对象.我想知道是否有一种方法可以重构下面显示的Validate方法,以便它不需要db访问.在实际的应用程序中,通常会有更多的进展,但我认为这个简化的例子应该足够了.
如果我们需要,我们将学会使用模拟对象,但它似乎只是很多开销,所以我正在寻找替代方案.
public class Person { public string Name; public string Validate() { if (PersonDA.NameExists(Name)) { return "Name Already Used"; } } }