簡體   English   中英

如何將 ODBC 連接與 Visual Studio 2019 和 .NET Core 3.0 結合使用?

[英]How can I use ODBC connections with Visual Studio 2019 and .NET Core 3.0?

我使用 Visual Studio Community 2019 16.3.1。

我想在 .NET Core 3.0 項目中使用 ODBC 連接(示例適用於 .NET Framework 4.x):

using System.Data.Odbc;

using (OdbcConnection connection = new OdbcConnection(odbcConnectionString))
{
    using (OdbcCommand command =  new OdbcCommand(sql, connection)) 
    {
        command.CommandType = System.Data.CommandType.Text;
        command.CommandTimeout = 0;
        command.Connection.Open();
        string value = Convert.ToString(command.ExecuteScalar());
        return value;
    }
}

我收到錯誤消息:

錯誤 CS1069
在命名空間“System.Data.Odbc”中找不到類型名稱“OdbcConnection”。 此類型已轉發到程序集 'System.Data.Odbc, Version=4.0.1.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' 考慮添加對該程序集的引用。

如果我對 class OleDbConnection 嘗試相同的操作,我會收到 OdbcCommand class 的類似消息和類似的錯誤。

在 Microsoft 文檔中,class OdbcConnection 被描述為 System.Data.Odbc 中 .NET Core 3.0 的一部分。

為什么我必須鏈接到舊版本?

我怎樣才能提出要求的參考?

附錄我發現 .NET Core 3.0 中的 System.Data.Odbc package 只包含兩個類(OdbcPermission 和 OdbcPermissionAttribute) 缺少 .NET Framework 4.8 的 System.Data.Odbc 中包含的所有其他類。

ODBC 和 OleDb 函數包含在 Microsoft.Windows.Compatibility Pack 中。 如果您在 NuGet 的幫助下下載此文件,則會找到這些類(針對 .NET Core 3.1 進行了測試)。

package 可以在此處下載: https://www.nuget.org/packages/Microsoft.ZAEA234828CE3AAB43406BCompatibilityEC3AAB4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM