我正在使用NBuilder来创建测试数据,而我的类具有大量属性,因此手动创建是不可能的。在我使用NBuilder之前,我将一些SQL选择粘贴到csv文件并使用自动映射在测试中重新创建它们。现在我想使用NBuilder或其他东西,我面临实体/数据库限制的问题。
有什么办法可以告诉其中一些构建器在生成数据时考虑我的Mapping文件。例如,如果有映射
this.Property(t => t.SomeId)
.IsFixedLength()
.HasMaxLength(3);
我希望框架能够根据这些要求为该属性生成测试数据。
答案 0 :(得分:1)
我想知道您是否可以使用Linq-to-EDMX来访问实体的映射信息。有了这些信息,您可以使用NBuilder的CreateNew
方法执行以下操作:
// Linq-to-EDMX was used to get the propertyLength value
x => x.SomeId = randomString.Substring(0, propertyLength)