.Net 连接器,用于带有 .Net Core 的 SAP HANA

Posted

技术标签:

【中文标题】.Net 连接器,用于带有 .Net Core 的 SAP HANA【英文标题】:.Net Connector for SAP HANA with .Net Core 【发布时间】:2017-05-20 19:02:52 【问题描述】:

我们正在为我们的组织创建一个 web api。 API 连接并从 HANA 视图中检索数据。我指的是以下链接中提供的示例以建立连接

https://blogs.sap.com/2015/04/15/creating-a-c-application-using-sap-hana-and-adonet/

由于 .Net Core 不允许直接引用 DLL,我们正在创建一个本地 nuget 包并引用它 (https://docs.nuget.org/ndocs/create-packages/creating-a-package)

初始化 HanaConection 时出现以下错误:

"版本不匹配: C:\Windows\assembly\GAC_MSIL\Sap.Data.Hana.v3.5\1.0.120.0__0326b8ea63db4bc4\Sap.Data.Hana.v3.5.dll (1.0.120.0), C:\Program Files\sap\hdbclient\libSQLDBCHDB.dll (1.00.112.00.1457615240).":"C:\Program 文件\sap\hdbclient\libSQLDBCHDB.dll"

【问题讨论】:

SAP 已从 HANA 2.0 SPS4 添加了对 .net 核心的支持。请参阅 SAP Note 2499500 或此处:help.sap.com/viewer/0eec0d68141541d1b07893a39944924e/2.0.04/… 【参考方案1】:

我们使用 x86 版本的 SAP .Net 连接器创建了本地 nuget 包,我们的应用程序在 64 位模式下运行。因此它失败了。我使用 64 位版本的 dll 重新创建了包,问题得到了解决。

【讨论】:

您能否详细解释一下。我如何将旧的 .DLL 文件打包到 Nuget 包中,并且它是否始终兼容?感谢您的帮助 您解决了这个问题还是需要帮助? 我使用了 64 位版本的 HANA 程序集并重新创建了 nuget 包,然后问题得到了解决 @Chandan 你确定你让这个 dll 在.Net Core(不是普通的.Net)下工作,正如你的问题的标题所暗示的那样? @Jpsy 是的,它有效 - 我知道我发布这个太晚了。【参考方案2】:

看起来您的程序集需要 HANA rev。 120司机,而转。实际安装的是112驱动。

【讨论】:

我不明白...我安装了 SAP 下载的最新版本。 @Chandan:是的,这意味着它需要比最新下载的版本更旧的版本...

以上是关于.Net 连接器,用于带有 .Net Core 的 SAP HANA的主要内容,如果未能解决你的问题,请参考以下文章

带有 ASP.NET Core DI 的 MediatR

Dot Net Core dll 作为带有事件的 COM dll

.NET Core AWS RDS 连接

如何将带有参数数组的字符串 xml 转换为 .NET Core 中的对象

C# .NET Core 3.1 无法建立 SSL 连接

无法在 .Net Core 中使用 RSA 私钥解密连接字符串