使用资源DLL的SQL Server CLR函数-示例或建议?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

使用资源DLL的SQL Server CLR函数-示例或建议?

祖安文状元 2020-01-04 15:23:55 129

我有一个已经使用了一段时间的SQL Server CLR函数DLL。唯一真正的问题是它在需要返回人类可读的字符串(例如“是”,“否”)时使用硬编码的字符串。我们所有其他桌面应用程序都使用资源字符串和图形来使应用程序语言独立(例如,允许使用英语,法语,西班牙语等)。我想找到一种方法,允许从存储过程或函数中查找语言资源DLL中的资源,但到目前为止尚未找到任何引用该资源的文章。这将采用接受语言代码和资源名称的函数的形式(例如GetResourceString('EN-US','ApplicationName')并按请求的类型返回适当的资源。

有没有人有一个过程或方法来显示如何将资源程序集加载到CLR Functions DLL旁边的SQL Server中?我假设每个程序集都需要签名,但是我不知道正常的资源加载机制是否可以在SQL Server中运行,或者我是否可以通过使用反射从CLR函数中加载程序集来“自己做”?

SQL 存储 开发框架 .NET
分享到
取消 提交回答
全部回答(1)
  • 祖安文状元
    2020-01-04 15:24:01

    0

    我没有尝试过此特定要求,但是SQL CLR程序集可以依赖于其他SQL CLR程序集并从中使用功能。

    创建程序集时,SQL Server还将在同一位置查找该程序集的任何相关程序集,并上载它们。它将它们设置为与您要加载的主装配件具有相同的所有者。

    加载程序集时,还可以将“ is_visible”设置为false,以便该程序集仅用于为数据库中的其他程序集提供内部实现,而不是直接进行分类。

    即使没有直接实现标准机制,也没有理由不能将其用于提供等效的语言资源DLL。

    然后,您可以通过查询sys.assembly_references目录视图来查看程序集之间的引用。

    0 0
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程