.net 4.0 EF 4,POCO模板-在跨命名空间拆分时出错

.net 4.0 EF 4,POCO模板-在跨命名空间拆分时出错,.net-4.0,entity-framework-4,poco,.net 4.0,Entity Framework 4,Poco,我正在遵循上概述的步骤 我在Keith.Data项目(和名称空间)中创建了一个简单的模型。我创建了一个Keith.Model项目并将其添加到解决方案中,删除Class.cs文件,将DataEntities.tt文件拖放到Keith.Model项目中,并在我的Keith.Data项目中添加了对Keith.Model的引用。然后,我将DataEntities.tt文件中的路径引用从@“DataModel.edmx”更改为@.\Keith.Data\DataModel.edmx”。当我保存它时,我遇到

我正在遵循上概述的步骤

我在Keith.Data项目(和名称空间)中创建了一个简单的模型。我创建了一个Keith.Model项目并将其添加到解决方案中,删除Class.cs文件,将DataEntities.tt文件拖放到Keith.Model项目中,并在我的Keith.Data项目中添加了对Keith.Model的引用。然后,我将DataEntities.tt文件中的路径引用从@“DataModel.edmx”更改为@.\Keith.Data\DataModel.edmx”。当我保存它时,我遇到了以下错误:

正在运行转换:System.Reflection.TargetInvocationException:调用的目标已引发异常。-->System.IO.FileNotFoundException:无法找到文件
位于Microsoft.VisualStudio.TextTemplating.VSHost.TextTemplatingService.ResolvePath(字符串路径)
位于Microsoft.VisualStudio.TextTemplating.VSHost.TextTemplatingService.ResolvePath(字符串路径)
---内部异常堆栈跟踪结束---
在System.RuntimeMethodHandle.\u InvokeMethodFast(IRuntimeMethodInfo方法、对象目标、对象[]参数、SignatureStruct&sig、MethodAttributes方法属性、RuntimeType类型所有者)
位于System.RuntimeMethodHandle.InvokeMethodFast(IRuntimeMethodInfo方法、对象目标、对象[]参数、签名sig、MethodAttributes、MethodAttributes、RuntimeType类型所有者)
在System.Reflection.RuntimeMethodInfo.Invoke(对象obj、BindingFlags invokeAttr、绑定器绑定器、对象[]参数、CultureInfo区域性、布尔skipVisibilityChecks)
在System.Reflection.RuntimeMethodInfo.Invoke(对象obj、BindingFlags invokeAttr、绑定器绑定器、对象[]参数、文化信息文化)
在Microsoft.VisualStudio.TextTemplating6A60439B68BD2BCE671B842FB15E35C4.GeneratedTextTransformation.DynamicHost.ResolvePath(字符串路径)
在Microsoft.VisualStudio.TextTemplating6A60439B68BD2BCE671B842FB15E35C4.GeneratedTextTransformation.MetadataLoader.TryCreatedItemCollection(字符串源路径、字符串[]引用模式、EdmItemCollection和EdmItemCollection)
在Microsoft.VisualStudio.TextTemplating6A60439B68BD2BCE671B842FB15E35C4.GeneratedTextTransformation.MetadataLoader.CreatedItemCollection(字符串源路径,字符串[]引用模式)
在Microsoft.VisualStudio.TextTemplating6A60439B68BD2BCE671B842FB15E35C4.GeneratedTextTransformation.TransformText()上 在Microsoft.VisualStudio.TextTemplating.TransformationRunner.RunTransformation(TemplateProcessingSession会话、字符串源、ITextTemplatingEngineHost主机、字符串和结果)

有人遇到了这个问题,知道是什么问题吗?我确信我错过了一些东西,但就我的一生而言,我不知道是什么


TIA

我使用EF4/POCO,但我的所有实体都是在代码中定义的,而不是edmx,因此我不是您使用的方法的专家

这就是说,识别应用程序正在做什么的一种简单方法是:下载系统内部并将其指向VS,然后查看它试图访问哪些文件(在DataModel.edmx上进行筛选)。这至少会告诉您文件的预期位置-您的相对路径可能不正确


我相信在这个主题上有更多经验的其他开发人员可以给你一个更好的答案,但这就是我解决这个问题的方法…

我复制了你提到的场景,当POCO.tt中的.edmx文件路径(在你的场景中是DataEntities.tt)错误时,我得到了相同的错误。仔细检查您指定的路径是否正确