asp.net core 1.如何将目标运行时更改为x86

dov*_*vid 2 ms-access 32-bit asp.net-core-1.0

我开发了一个Asp核心Web应用程序(.net框架)。如何指定32位应用程序运行?

发行向导不会让更改Target Runtime,选择了x64。

我在计算机上安装了x86版本的.NET Core Installer。

发布向导屏幕截图: 在此处输入图片说明

PS为什么我需要x86。

我必须在安装了32位Microsoft Access(对于旧软件为2003)的计算机上运行该站点。我还需要访问Microsoft Access文件中的数据,这要求我使用Microsoft.Jet.OLEDB.4.0驱动程序。

问题可能是,该应用程序的核心ASP.NET始终作为64位应用程序运行,这是在IIS中设置“启用32位应用程序”后给我一个已知异常“未注册驱动程序”的原因。

我无法安装64位访问驱动程序引擎,因为它需要删除32位MS Access。

Moh*_*hin 5

如此处所述您需要将"runtimes"密钥添加到project.json文件中,如下图所示。

完成此操作后,菜单中的Target Runtime条目Publish将列出所有指定的运行时。尽管这还不足以使其正常运行,因为使用Publish菜单和选择x86版本将无效,并会生成x64二进制文件。(此错误将来可能会修复)。

解决方法是导航到您所在的项目文件夹project.json。打开命令提示符,然后键入以下内容以在所需的运行时中包含二进制文件:

dotnet publish --runtime win7-x86

如果仍然出现任何错误,则可能需要安装相应的运行时(在此处下载表单)。

更多信息:

.NET Core Project.json运行时

platformbuildOptions列出所有可能的目标下还有一个关键,但是由于某些问题(例如#1624),它没有任何作用,而且系统似乎忽略了这一点。

在此处输入图片说明