Jim*_*ion 4 entity-framework c++-cli visual-studio
我认为这个问题已得到修复.我正在使用Visual Studio 2013,它是Entity Framework 6.1.我收到错误消息:PublicKeyToken = xxxxxx未标记为可序列化.
我以为这是固定的.它是否再次被打破,如果是这样,是否有解决方法?
谢谢.
尝试安装到win32 C++控制台应用程序时,这是完整的错误消息.(使用默认设置构建,没有其他内容添加到新版本.)错误:在程序集'Microsoft.VisualStudio.Project.VisualC.VCProjectEngine,Version = 12.0.0.0,Culture中键入'Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCProjectShim' =中性,PublicKeyToken = b03f5f7f11d50a3a'未标记为可序列化.
尝试安装到C++ CLR时,这是完整的错误消息:(实际上,它是完全相同的错误消息.)
尝试安装到常规空C++项目时,这是完整的错误消息:(同样,错误消息相同.)
Han*_*ant 13
好的,我终于弄清楚你在做什么了.您正在尝试运行Nuget以将Entity Framework下载并安装到C++项目中.是的,那将是一场失败的鲸鱼.Nuget获得了在2.5版本上安装C++库的能力,但这仅适用于本机库.纯C++,不是像EF这样的托管代码.作为一个相对较新的功能,它没有做任何事情来阻止你弄错,它不会将可用的包过滤到可以在C++项目中工作的那种.
失败的步骤是最后一步,下载和复制文件工作正常,但Nuget运行Powerscript脚本来修改项目属性.对于EF来说,这是为了在C#或VB.NET项目中工作而编写的.C++项目的VS扩展模型(由错误消息中报告的VCProjectEngine类实现)太不同,不允许该脚本成功完成.
请记住,在本机C++项目中使用EF的几率为零.在C++/CLI项目中,你只会有一点点注意力.从CLR节点中的项目模板开始是必需的第一步.
下一个是欺骗Nuget安装程序,在您的解决方案中添加一个虚拟C#项目并运行Nuget以将EF安装到该项目中.您将看到它将app.config文件添加到项目中,您需要在C++/CLI项目中执行相同的操作.它还添加了两个EF程序集,您还需要将它们添加到C++/CLI项目中:
packages\EntityFramework.6.1.0\lib\net45目录请务必编写C++/CLI代码以使用它.请注意,你有一个爱斯基摩人有机会找到任何东西.更安全的方法是创建一个使用EF的C#库,并在C++/CLI项目中使用该库.
| 归档时间: |
|
| 查看次数: |
4879 次 |
| 最近记录: |