【发布时间】:2012-04-25 20:49:27
【问题描述】:
我正在使用 Code First 将类映射到现有数据库。我需要一种方法来对这些映射进行单元测试,这些映射混合了基于约定、基于属性和 fluent-api。
要进行单元测试,我需要确认类的属性映射到数据库中正确的表名和列名。此测试需要针对上下文执行,并且应首先涵盖代码的所有配置选项。
在非常高的层次上,我希望断言类似(伪代码):
Assert.IsTrue(context.TableFor<Widget>().IsNamed("tbl_Widget"));
Assert.IsTrue(context.ColumnFor<Widget>(w => w.Property).IsNamed("WidgetProperty"));
【问题讨论】:
-
好吧,我不喜欢 EF,如果可能的话,评估一下使用 NHibernate 的可能性,使用 NHibernate 你可以很容易地测试你的映射
-
@Jupaol 很高兴知道,我们同时使用 EF 和 NH,两者都有问题
标签: c# unit-testing ef-code-first entity-framework-4.3