我对这个主题做了一些简单的研究,我想知道什么是所有的优点和缺点,或者在 SQL Server 中启用/注册这个特定的 .dll?
返回信息 - 我们正在与第三方应用程序集成(不幸的是,这不是我的决定),它需要这个 .dll 来处理其他一些 .dll。我需要 CLR 函数的目的是能够在 SSMS 中编写 SQL 查询并将该数据发送到第三方应用程序的 API,然后第三方应用程序的 API 将依次执行正确的数据加载/更改(向/从该应用程序插入和删除)将通过其 API 完成)。
编辑 - 也许我应该包括这个细节
在尝试注册我的 c# 类时,我显然收到了错误“system.web 未注册等等等等”,这反过来又促使我对这个主题进行研究。
结束编辑
所以,我的难题是,为了能够注册我的 C# 类/.dll,我必须注册所有依赖的 .dll,但是根据我的研究,我知道这个特定的可能会有很大的问题。
因此,看到我对谷歌研究之外的陷阱并不十分熟悉,我想知道你们中的一个好人是否可以帮助我了解如何在这方面做出最佳决定。
另外,我还能在这篇文章中添加什么,以便更容易提供洞察力?我不太确定 C# 代码是否相关?我知道这可能有点宽泛,但我希望它足够具体而不会被标记?
更具体地说明这里发生的事情(根据所罗门的要求)
第 3 方应用程序使用“API”(松散使用,因为我被告知它不是一个很好的 API)来回发送数据。您会注意到它调用了一个 Importer 函数,该函数只接受它转换的数据表或 excel 文件。我别无选择,因为公司告诉我通过普通 XML 插入和删除非常慢并且有意外行为。
引用 System.Web 的 .DLL 在我的 C# 类中被引用,这是首先需要能够向它发送数据的。
关于:
为什么你不能使用我提到的方法?它们已经存在于 SQL Server 的 CLR 主机中。这是一个网络服务,对吧
我不确定我对 API 的总体了解是否足以回答这个问题。我很愿意而且只是缺乏这样做的知识和经验。这也可能是因为我对如何与这个特定的 API 交互有限制,我不确定这些限制如何应用于这些方法。(我会进一步调查,看看我是否可以自己回答这个问题)。
尽管我考虑得越多,我可以创建一个 SQL Server 可以调用的“中间人”类,然后它会调用另一个类,该类将拥有所有正确的引用,这可能会让我摆脱当前的情况。但是,我仍然对具体的反馈感兴趣,以便我可以从中学习。
这是我的 C# 类:
using Perfion.Api; -- this .DLL …
Run Code Online (Sandbox Code Playgroud)