SQL Server 无法创建程序集,因为它引用 system.runtime,版本=5.0.0.0

问题描述 投票:0回答:1

我正在尝试创建我的第一个 CLR 程序集。我已经在 VS 中创建了一个 dll,现在我尝试在 SQL Server 中使用它。

我尝试使用以下代码创建程序集:

CREATE ASSEMBLY SQLCLRroy
FROM '...\SqlExternalFunctions\bin\Debug\net5.0\SQLExternalFunctions.dll';

但我收到错误

程序集“SqlExternalFunctions”引用程序集“system.runtime,version=5.0.0.0,culture=neutral,publickeytoken=b03f5f7f11d50a3a。”,当前数据库中不存在该程序集。

在网上搜寻后,我尝试这样做:

CREATE ASSEMBLY [System.Runtime] 
FROM 'C:\Program Files\dotnet\packs\Microsoft.NETCore.App.Ref\5.0.0\ref\net5.0\System.Runtime.dll'

这又会导致错误

警告:Microsoft .NET Framework 程序集“system.runtime,version=5.0.0.0,culture=neutral,publickeytoken=b03f5f7f11d50a3a”。您正在注册的内容尚未在 SQL Server 托管环境中进行全面测试,并且不受支持。

我是否需要以某种方式阻止我的 .NET 代码引用

System.Runtime
?我唯一的包裹是
System.Data.SqlClient

我的.NET代码非常简单:

using System;
using System.Linq;

public static class SqlExternalFunctions
{
    [Microsoft.SqlServer.Server.SqlFunction]
    public static int myTest(int param )
    {
        return param;
    }
}
sql-server sqlclr
1个回答
0
投票

使用 .Net Framework 而不是 .Net Core

© www.soinside.com 2019 - 2024. All rights reserved.