我正在尝试使用VS2010使用EF4的存储库模式.
为此,我通过右键单击实体模型设计器并单击添加代码生成项来使用POCO代码生成.然后我选择POCO模板并获取我的课程.
我希望能够做的是将我的解决方案结构化为Entity(POCO)类的单独项目以及实体模型和存储库代码的另一个项目.
这意味着我的MVC项目可以将POCO类用于强类型视图等,而不必知道存储库或必须引用它.
要将它们全部插入,我将有另一个带接口的独立项目并使用IoC.
听起来不错我只是不知道如何将类生成到自己的项目中!我可以复制它们,然后更改它们的名称空间,但我想在每次更改数据库中的模式并希望更新我的模型时避免手动工作.
谢谢
.net code-generation entity-framework poco repository-pattern
我在VS2012中注意到,当您创建新的EF模型(.edmx)时,DbContext是默认代码生成,而.tt(T4模板)文件现在嵌套在解决方案资源管理器中的.edmx文件下.
问题: 有没有办法将这些.tt文件移动到另一个文件夹或项目? 当我尝试在解决方案资源管理器中拖放时,它将不允许我移动嵌套的.tt文件.
问题详细信息: 以前(在VS2010中)我曾经将我的POCO的一个.tt文件移动到一个名为DataDefinitions的类库中,我将另一个.tt文件留给了一个名为DataAccess的类库中的上下文.现在看来我将无法移动这些文件......并将我的资产分成不同的层.
在这篇MSDN文章中,如果你滚动到底部,你可以看到.tt文件现在如何嵌套的图片... http://msdn.microsoft.com/en-us/data/jj613116
到目前为止,我正在创建一个classLibrary项目,并从exixting数据库中插入新的Ado.net Entity数据模型和genareting.类和对象类代码自动创建.这对我来说并不重要.
但我想这样做并将ObjectContext类(例如:SomeEntities)和table classess分离为两个calss库.
当我更改数据库表属性时,我将更新edmx模型,类将自动更新.
有没有办法做到这一点?我没有使用codefirst因为有一个数据库和数据,我不是同样使用modelfirst,我使用databasefirst但不能分开