Microsoft.SqlServer.Server 命名空间

Boh*_*dan 5 c# sql-server sqlclr

我正在尝试实现与 SQL Server 一起使用的公共语言运行时 (CLR) 程序集。为了创建 dll,我使用的是 Visual Studio 2019。

我有一个示例教程中的以下代码:

using System;
using System.Collections;
using System.Text;
using System.Data;
using System.Data.SqlTypes;
using Microsoft.SqlServer.Server;


namespace Split
{
    public class Class1
    {
        [SqlFunction(
            DataAccess = DataAccessKind.None,
            FillRowMethodName = "MyFillRowMethod"
            , IsDeterministic = true)
        ]

        public static IEnumerable Split(string stringToSplit, string delimiters)
        {

            string[] elements = stringToSplit.Split(delimiters.ToCharArray());
            return elements;
        }

        public static void MyFillRowMethod(Object theItem, out SqlChars results)
        {
            results = new SqlChars(theItem.ToString());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但是我遇到了这个错误:

错误 CS0234 命名空间“Microsoft”中不存在类型或命名空间名称“SqlServer”(您是否缺少程序集引用?)

有人可以告诉我解决问题的方法吗?

div*_*div 6

正如错误消息所暗示的那样:

您可能缺少对 的引用System.Data.SqlClient,它SqlFunctionAttributeMicrosoft.SqlServer.Server命名空间中包含。

  1. 右键单击您的项目,然后单击 Manage NuGet Packages...

    NuGet

  2. 搜索 System.Data.SqlClient

    在此处输入图片说明

  3. 安装

    在此处输入图片说明

那应该可以解决您的问题。