C# 如何自动模拟自定义业务实体?

C# 如何自动模拟自定义业务实体?,c#,asp.net,c#-3.0,asp.net-3.5,moq,C#,Asp.net,C# 3.0,Asp.net 3.5,Moq,我需要为30种不同类型的定制业务对象提供自动模拟。为了避免为每个实体中的所有公共属性编写手动模型代码的成本,我正在寻找一个轻量级框架,可以在我的项目中使用。 实际上,这不是为了单元测试,而是为了“预览”功能 至于模拟的行为,我想按底层实体的数据类型进行分析。 比如说, public class Customer { public int CustomerID { get; set; } public string FirstName { get; set; } publi

我需要为30种不同类型的定制业务对象提供自动模拟。为了避免为每个实体中的所有公共属性编写手动模型代码的成本,我正在寻找一个轻量级框架,可以在我的项目中使用。 实际上,这不是为了单元测试,而是为了“预览”功能

至于模拟的行为,我想按底层实体的数据类型进行分析。 比如说,

public class Customer
{
    public int CustomerID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public DateTime DateOfBirth { get; set; }
}
所有
int
properties=1111,所有
string
properties=XXXX,所有
DateTime
属性都将是
DateTime。现在
等等。我认为我不需要DI/IoC容器,因为在准备实体模型之后,我必须显式地将所有这些实体传递给一个方法(参数
列出实体

规格: ASP.NET C#(.NET 3.5) DotNetNuke(5.X.X) MS SQL Server 2005


谢谢你的评论和建议

如果您有一个创建每个对象的工厂,您可以在工厂内部调用一个helper方法,通过反射设置默认值。迭代对象属性并为已知类型设置默认值

var customer = CustomerFactory.Create();
否则,每次创建新实例时都必须调用helper方法:

var customer = DefaultValuesHelper.SetDefaults<Customer>(new Customer());
var customer=DefaultValuesHelper.SetDefaults(新客户());

。。我想我没有明确提到不同实体中的相同数据类型可以有不同的模型值。例如:Customer.CustomerID(1111)、Order.OrderID(2222)。您可以将此逻辑放入帮助器中