【发布时间】:2020-02-24 02:31:09
【问题描述】:
我正在尝试做的事情:
- 从 .Net Core 应用程序连接 HANA 数据库。 (Windows 环境)
我做了什么:
- 已下载并安装适用于 Windows 的 HANA 客户端。使用文件夹“hdb_client_windows_x86_64”中的“hdbinst.exe”安装我明白了。
- 从路径:C:\Program Files\sap\hdbclient\dotnetcore\v2.1 为文件“Sap.Data.Hana.Core.v2.1.dll”创建了一个 NuGet 包
- 通过 NuGet 包管理器将此文件安装到我的示例 .Net Core 2.1 项目中。
我正在经历的事情:
- 警告 1 --> 警告 NU1701。包“SAP.HANADBClient.NetCore 2.1.0”是使用“.NETFramework,Version=v4.6.1”而不是项目目标框架“.NETCoreApp,Version=v2.1'。此软件包可能与您的项目不完全兼容。
- 警告 2 --> 警告 MSB3270。正在构建的项目“MSIL”的处理器架构与参考“C:\Users\XXXXX.nuget\packages\sap.hanadbclient.netcore\2.1.0\lib\Sap.Data”的处理器架构不匹配.Hana.Core.v2.1.dll”、“AMD64”。这种不匹配可能会导致运行时失败。请考虑通过配置管理器更改项目的目标处理器架构,以使您的项目和参考之间的处理器架构保持一致,或者依赖与您项目的目标处理器架构相匹配的处理器架构的参考。
- .Net Core 2.2 项目的类似案例
我环顾四周:
- 我在网上进行了搜索,发现很少有成员已经分享过此类问题(.Net core with HANA integration)。但是看到this 帖子说问题已经解决了。但它好吗?不确定。
- 甚至this 的帖子都说 HANA 支持 .Net Core。
- 在网上搜索过,但找不到解决方案。
我在寻找什么:
- 为什么我会收到这两个警告?
- 以后会不会出现任何问题?(prod runtime..)
- 特别是 - 第二个警告 - 为什么它正在寻找“处理器架构”,以及如何解决这个问题。
我可以请求你们中的任何人帮助我完成这项工作吗? 请让我知道还需要更多详细信息。
提前致谢。
【问题讨论】:
-
您最近是否将项目从 .NET 4.6.1 升级到 .NET Core 2.1 或 2.2?如果是这样,您可能只需要重新安装 NuGet 包,因为您的项目运行时已更改。
-
感谢您的回复!不,我没有。使用 .Net Core 创建项目。
-
Shan,你试过用
update-package -reinstall这样的命令重新安装你所有的包吗?参考。 docs.microsoft.com/en-us/nuget/consume-packages/… -
我刚刚尝试了这个命令(以及 -source 参数,因为我创建了我的本地包 repo)。 Update-Package
-Reinstall -Source 没有帮助。得到此响应:基于传递包管理的项目 不遵守“源”参数。将使用 NuGet 配置中启用的源。项目“ ”的当前包源中没有可用的包更新。注意:我的 pckg 文件中没有任何更新。 -
你试过卸载然后重新安装包吗?