修复 MDAC n IIS10

问题描述 投票:0回答:1

我有用 C#.net 7 编写的 32 位 API。该 API 需要使用 OLEDB 驱动器(32 位)访问 FOX PRO DBF 文件。 (如果存在 64 位驱动器可以完成这项工作,请告诉我,以便我可以升级)

所有工作均在 IISExpress、VS2022 环境(开发、阶段和产品)上进行。

我确实在本地 PC 上部署到 IIS 10,API 运行。当我们请求数据时就会出现问题。

我明白了:

卷曲

curl -X 'GET' \
  'http://localhost:15080/excessiveReturns' \
  -H 'accept: application/json'

请求网址

http://localhost:15080/excessiveReturns

服务器响应

CodeDetails500UndocumentedError:内部服务器错误响应正文下载

{“类型”:“https://tools.ietf.org/html/rfc7231#section-6.6.1”,

“title”:“处理您的请求时发生错误。”,“status”:500,

“详细信息”:“数据提供程序需要 Microsoft 数据访问组件 (MDAC)。请安装 Microsoft 数据访问组件 (MDAC) 2.6 或更高版本。 - 内置 COM 已通过功能开关禁用。请参阅 https:/ /aka.ms/dotnet-illink/com 了解更多信息。”

}

响应标头内容类型:application/problem+json 日期:2023 年 9 月 30 日星期六 00:16:10 GMT 服务器:Microsoft-IIS/10.0 传输编码:分块 x-powered-by:ASP.NET

我确实安装了 MDAC 2.8。重新启动我的电脑。但是问题依然存在

请提供解决此问题的建议吗?

我提前表示感谢。

我确实安装了 MDAC 2.8。重新启动我的电脑。但是问题依然存在

oledb visual-foxpro iis-10 mdac
1个回答
0
投票

我关注的是错误消息的第一部分:“数据提供程序需要 Microsoft 数据访问组件 (MDAC)。请安装 Microsoft 数据访问组件 (MDAC) 2.6 或更高版本”

当我搜索第二部分错误消息时,我找到了解决方案:“内置 COM 已通过功能开关禁用。”我找到了这个链接:System.NotSupportedException in TaskScheduler when using PublishTrimmed .NET6.0

这个问题的解决方案是项目文件中的BuiltInComInteropSupport:

<PropertyGroup>
...
     <BuiltInComInteropSupport>true</BuiltInComInteropSupport>
</PropertyGroup>
© www.soinside.com 2019 - 2024. All rights reserved.