我無法獲得Npgsql連接字符串的工作。我已經嘗試了一些方法,例如連接字符串Npgsql異常
NpgsqlConnection conn = new NpgsqlConnection("Server=192.168.1.220;User Id=pgsql;Password=pgsql;Database=pgsql;");
或
var conn = new NpgsqlConnection("Host=192.168.1.220;Username=pgsql;Password=pgsql;Database=pgsql");
都拋出異常我:
The type initializer for 'Npgsql.NpgsqlConnectionStringBuilder' threw an exception.
進出口運行Windows XP 64位與2010年VS我已經嘗試過使用ODBC或pgAdmin III從該機器連接到我的pgsql服務器 - 兩者都可以。
可能是這個問題與我的安裝Npgsql的? 我無法用的NuGet安裝它,因爲我得到了以下錯誤:
PM> Install-Package Npgsql Installing 'Npgsql 3.2.1'. Successfully installed 'Npgsql 3.2.1'. Adding 'Npgsql 3.2.1' to Project. Uninstalling 'Npgsql 3.2.1'. Successfully uninstalled 'Npgsql 3.2.1'. Install failed. Rolling back... Install-Package : Could not install package 'Npgsql 3.2.1'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.0,Profile=Client', but the packag e does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author. At line:1 char:16 + Install-Package <<<< Npgsql + CategoryInfo : NotSpecified: (:) [Install-Package], InvalidOperationException + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand
我試過也目標框架切換到4.0或3.5,但結果是完全一樣的。 因此,我簡單地通過從MSI安裝中提取.dll來安裝Npgsql,然後將其作爲參考加載。
有誰知道如何使連接字符串工作?
從你的NuGet安裝例外,它會像你想安裝Npgsql的到.NET Framework 4.0中的項目 - 這是不支持的。最低支持版本是4.5。 –
如果您仍然在.NET 4.5(或更高版本)應用程序中遇到異常,請發佈完整的異常,包括完整的堆棧跟蹤和任何內部異常。只是「類型初始值設定項引發異常」,不可能知道發生了什麼。 –
看來這個問題與你所描述的完全一樣,但我需要.NET 4.0使它在WinXP上運行,所以我通過從Npgsql切換到Devart基本pgsql庫來解決了我的問題。謝謝。 – geosys