我们的产品需要与包括Server 2003和XP在内的Windows版本兼容。
我们拥有代码第一个具有各种迁移的实体框架项目。
我们正在使用实体框架6.0.2 nuget包中提供的“migrate.exe”文件版本6.0.21211.0来部署这些迁移来创建或更新数据库。
当我们在Visual Studio 2010中使用XP本身或使用Visual Studio 2013安装Windows时,每次运行“migrate.exe”时都会在xp或server 2003机器上安装软件包,我们将获得“无效的win32应用程序” “例外。
为什么“migrate.exe”不能在Windows XP和Windows Server 2003上运行,这是因为它们是不再真正支持的操作系统吗?
答案 0 :(得分:3)
我设法通过下载6.0.2版本的实体框架的源代码,在属性中取消签名,然后通过.net 4.0而不是4.5通过将解决方案配置更改为Release40来解决此问题。
源代码可以在这里找到:
http://entityframework.codeplex.com/SourceControl/changeset/7648d33dfb53589d9c32b605c61758a5a6c0b80b
我发现很难找到它。
答案 1 :(得分:0)
您可能没有在失败的计算机上安装.NET Framework。
(作为旁注,我相信XP和2003很快就会失去支持,所以你可能想升级你的环境......)