【问题标题】:Assembly dependency in SQL Server 2008SQL Server 2008 中的程序集依赖项
【发布时间】:2017-04-19 04:17:00
【问题描述】:

当我注册程序集System.ServiceModel.dll 时,我收到以下警告消息:

之后我尝试注册Microsoft.Transactions.Bridge.dll 并收到此警告:

【问题讨论】:

    标签: sql-server sqlclr


    【解决方案1】:

    您试图从哪个目录/文件夹中提取这些 DLL?您应该只需要创建 ServiceModel 程序集。这将要求将数据库设置为TRUSTWORTHY ON,并将程序集创建为UNSAFE

    话虽如此,鉴于您正在构建的内容非常有限,您最好找到一种完全不同的方法。 SQLCLR 是一个非常受限的环境,不允许混合模式的程序集;只允许使用纯 MSIL 程序集。在 .NET Framework 2.0、3.0 和 3.5 版中,ServiceModel 库是纯 MSIL,因此导入它确实有效。但是,从 .NET Framework v 4.0 开始,ServiceModel 更改为混合模式 DLL,因此无法从 SQL Server 2012 开始导入 SQL Server(即要链接的第一个版本的 SQL Server到 CLR v 4.0,它使用 .NET Framework 版本 4.0 到当前的 4.7(我认为)。除了重写代码以不再引用 ServiceModel 之外,没有其他解决方法。请在此处查看我的答案以获取更多详细信息:

    (Unfixable) Assembly exists on SQL Server 2014 but it claims it doesn't have it

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-10-21
      • 2010-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-10
      相关资源
      最近更新 更多