![](/img/trans.png)
[英]Creating separate projects for entity classes ( POCO classes) and DBContext classes
[英]Separate POCO Object classes and DBContext from Entity Framework 6 Model
我开始使用Entity Framework 6.0.1版本。 我想将生成的DbContext和POCO模板类与模型中的不同类库分开。 我花了几个小时解决问题但没有成功。
如果我创建一个新的类库,添加EF 6 EntityObject Generator并填充以下模板变量:
SourceCsdlPath = @"..\\..\\DataAccess\\Model.edmx"
,
构建后在错误列表中获取以下错误:
错误2运行转换:System.IO.FileNotFoundException:无法找到文件文件名:'C:\\ Source \\ EFsource \\ POCO .... \\ DataAccess \\ SZOSZRDBModel.edmx'
服务器堆栈跟踪:位于System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md,Object [] args,Object server,Object []&outArgs)的Microsoft.VisualStudio.TextTemplating.VSHost.TextTemplatingService.ResolvePath(String path)在System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)
在[0]处重新抛出异常:位于Microsoft.VisualStudio的System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&msgData,Int32类型)的System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg,IMessage retMsg)。 TextTemplating.ITextTemplatingEngineHost.ResolvePath在Microsoft.VisualStudio.TextTemplating31479401930D2C4820ACF71C66B5389A24A5053726798D9718DB676B3FFA30A3454B3CB1EDE2E1C267D5278B1528860C072E81A0E4647BC23993669604048FCD.GeneratedTextTransformation.ApplyUserSettings(UserSettings userSettings)(字符串路径)在Microsoft.VisualStudio.TextTemplating31479401930D2C4820ACF71C66B5389A24A5053726798D9718DB676B3FFA30A3454B3CB1EDE2E1C267D5278B1528860C072E81A0E4647BC23993669604048FCD.GeneratedTextTransformation.TransformText()
错误消息是明确的,但我不知道,如何设置模型路径没有完整的绝对路径。
我不确定,使用最新版本的实体框架是最好的主意......
绝对路径不是必需的。 看起来你的相对路径不正确。 我正在使用EF6.1,我在一个单独的项目中有POCO类。 这就是我在VS 2013中使用它的方法。
ADO.NET Entity Data Model
。 该项目将包含DB Context
。 DBContext
项目中添加了新的EF6.x DbContext Generator
项。 POCO
对象。 [Project Name]Model.tt
文件从DbContext
项目移动到POCO
项目。 [Project Name]Model.tt
文件。 在第5行,我改变了: const string inputFile = @"SampleModel.edmx";
const string inputFile = @"..\\DbContext\\SampleModel.edmx";
DbContext
项目中向POCO
项目添加了一个引用。 如果您使用的是VS 2013,则可以调试模板以查看相对路径的解析方式。
.tt
文件中添加断点。 .tt
文件,然后选择“Debug T4 Template”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.