Microsoft.Data.Tools.TdsLib 0.2.2089.23

前缀已保留
dotnet add package Microsoft.Data.Tools.TdsLib --version 0.2.2089.23                
NuGet\Install-Package Microsoft.Data.Tools.TdsLib -Version 0.2.2089.23                
该命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用 NuGet 模块的版本 Install-Package
<PackageReference Include="Microsoft.Data.Tools.TdsLib" Version="0.2.2089.23" />                
对于支持 PackageReference 的项目,将此 XML 节点复制到项目文件中以引用包。
paket add Microsoft.Data.Tools.TdsLib --version 0.2.2089.23                
#r "nuget: Microsoft.Data.Tools.TdsLib, 0.2.2089.23"                
#r 指令可以用于 F# Interactive 和 Polyglot Notebooks。将其复制到交互式工具或脚本的源代码中以引用包。
// Install Microsoft.Data.Tools.TdsLib as a Cake Addin
#addin nuget:?package=Microsoft.Data.Tools.TdsLib&version=0.2.2089.23

// Install Microsoft.Data.Tools.TdsLib as a Cake Tool
#tool nuget:?package=Microsoft.Data.Tools.TdsLib&version=0.2.2089.23                

Microsoft.Data.Tools.TdsLib

托管 C# 代码中对 TDS 协议(版本 7.4)的开源实现。它不是完整的实现,当前支持集中在登录步骤和一些通用的 TDS 功能。它不支持标准 数据流 或 T-SQL 命令。

此库主要用作 TDS 连接的检测和诊断,但也可以用于手动构造和处理 TDS 连接的任何步骤。它还可以用于模拟 TDS 客户端。

示例

建立 TDS 连接并登录到 SQL 服务器

using Microsoft.Data.Tools.TdsLib;
using Microsoft.Data.Tools.TdsLib.IO.Connection.Tcp;
using Microsoft.Data.Tools.TdsLib.Messages;
using Microsoft.Data.Tools.TdsLib.Packets;
using Microsoft.Data.Tools.TdsLib.Payloads.Login7;
using Microsoft.Data.Tools.TdsLib.Payloads.PreLogin;
using Microsoft.Data.Tools.TdsLib.Tokens.Error;

string hostname = "sqlserver.contoso.net";
int port = 1433;

using TdsClient client = new TdsClient(new TcpServerEndpoint(hostname, port));

// Send PreLogin message
await client.MessageHandler.SendMessage(new Message(PacketType.PreLogin)
{
    Payload = new PreLoginPayload(encrypt: true)
});

// Receive PreLogin message
var preLoginResponseMessage = await client.MessageHandler.ReceiveMessage(b => new PreLoginPayload(b));

// Perform TLS handshake
await client.PerformTlsHandshake();

// Prepare Login7 message
Login7Payload login7Payload = new Login7Payload()
{
    Hostname = hostname,
    ServerName = "MyServerName",
    AppName = "MyAppName",
    Language = "us_english",
    Database = "MyDatabaseName",
    //Username,
    //Password
};

login7Payload.TypeFlags.AccessIntent = OptionAccessIntent.ReadWrite;

Message login7Message = new Message(PacketType.Login7) { Payload = login7Payload };

// Send Login7 message
await client.MessageHandler.SendMessage(login7Message);

// Receive Login response tokens
await client.TokenStreamHandler.ReceiveTokensAsync(tokenEvent =>
{
    if (tokenEvent.Token is ErrorToken errorToken)
    {
        // Error was received from the server
    }
});

// If no error token was received, and SQL server did not close the connection, then the connection to the server is now established and the user is logged in.
产品 兼容和额外计算的目标框架版本。
.NET net5.0 已计算。 net5.0-windows 已计算。 net6.0 已计算。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 已计算。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。
.NET Core netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.0 已计算。 netcoreapp3.1 已计算。
.NET Standard netstandard2.0 兼容。 netstandard2.1 已计算。
.NET Framework net461 已计算。 net462 已计算。 net463 已计算。 net47 已计算。 net471 已计算。 net472 已计算。 net48 已计算。 net481 已计算。
MonoAndroid monoandroid 已计算。
MonoMac monomac 已计算。
MonoTouch monotouch 已计算。
Tizen tizen40 已计算。 tizen60 已计算。
Xamarin.iOS xamarinios 已计算。
Xamarin.Mac xamarinmac 已计算。
Xamarin.TVOS xamarintvos 已计算。
Xamarin.WatchOS xamarinwatchos 已计算。
兼容目标框架
包含的目标框架(在包中)
详细了解 目标框架.NET Standard.
  • .NETStandard 2.0

    • 无依赖。

NuGet 包

此包未由任何 NuGet 包使用。

GitHub 仓库

此包未由任何流行的 GitHub 仓库使用。

版本 下载 最后更新
0.2.2089.23 1,667 9/21/2022