如何共享实体框架MyEntitiesDbContext界面交叉项目? 我想遵循S.O.L.I.D原则并将其用于测试其他项目。
主要问题是与界面共享模型实体而没有循环引用。
答案 0 :(得分:0)
您可以通过使用t4模板来生成假货类来实现此目标。你可以生成
要了解t4模板,您可以阅读http://msdn.microsoft.com/en-us/data/gg558520.aspx。我希望这篇文章对你有所帮助。祝你好运!
答案 1 :(得分:0)
如何共享实体框架MyEntitiesDbContext界面交叉 项目?我想遵循S.O.L.I.D原则并将其用于 测试其他项目。
要实现这一点,您需要使用EF生成的类来实现接口,然后使用模拟(可能是Rhino Mocks)来测试您的代码。
主要问题是与界面共享模型实体而没有 循环引用。
为了避免循环引用,您需要生成接口并将其包含在一个单独的程序集中,该程序集不会引用回EF程序集。
这些只是人们尝试使用EF时遇到的很多困难中的两个,即使它现在是6.0版本
幸运的是,您可以从https://entityinterfacegenerator.codeplex.com/
下载T4文件他们帮助回答上述问题。