Konfigurieren ASP.NET Entwicklung Server-Verbindung zu einer postgres-Datenbank
Ich habe eine vorhandene ASP.NET app, die konfiguriert ist, um eine Verbindung zu einem MS SQL Server-Datenbank, und ich bin versucht, es zu ändern, die Verwendung einer PostgreSQL-Datenbank statt.
Ich möchte vermeiden, ändern Sie den C# - code, wenn möglich.
Ich erwartet, dass die folgenden änderungen ausreichen würde:
- Fügen Sie einen Verweis auf eine geeignete postgres-Treiber, in diesem Fall
NauckIT.PostgreSQLProvider.dll
- Hinzufügen
provider
- tag angeben, um die Treiber zu verwenden, in diesem Fall:
<connectionStrings - > <add name="default" connectionString="Server=127.0.0.1;Port=5432;User Id=finnw;Password=XXX;Database=default;Pooling=false" providerName="Npgsql" /> </connectionStrings - >
Aber die providerName
tag scheint keine Wirkung haben (obwohl es nicht in sich selbst, erzeugen einen Fehler.) Stattdessen sehe ich immer noch diese Fehlermeldung im browser:
[ArgumentException: Keyword not supported: 'port'.]
System.Data.Common.DbConnectionOptions.ParseInternal(Hashtable parsetable, String connectionString, Boolean buildChain, Hashtable synonyms, Boolean firstKey) +4907604
System.Data.Common.DbConnectionOptions..ctor(String connectionString, Hashtable synonyms, Boolean useOdbcRules) +98
System.Data.SqlClient.SqlConnectionString..ctor(String connectionString) +55
So wie es aussieht es ist immer noch versuchen, verwenden Sie den MS-SQL-Server-Treiber.
Wie kann ich Sie überreden es nicht zu tun?
Ich bin mit ASP.NET Entwicklung Server, nicht IIS. Anfangs dachte ich, das könnte das problem sein, aber dieses forum posten anderes vermuten lässt.
InformationsquelleAutor finnw | 2009-02-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eher wunderbare http://www.connectionstrings.com/ gibt Beispiele für alle Arten von Verbindungszeichenfolgen, und deins sieht OK zu sein. Leider ist Ihr code ist SqlClient verwenden, die der SqlServer-Datenbank zugreifen .Net. Du gehst zu haben, um hack code ...
InformationsquelleAutor MrTelly
Müssen Sie herunterladen und konfigurieren von PostgreSQL ADO.Net Anschluss Treiber, es gibt ein paar ein, um dies zu tun, ist die am häufigsten verwendete ist Npgsql (http://pgfoundry.org/projects/npgsql/), laden Sie zuerst den Treiber. (Download Npgsql2 das ist die neue!)
Stellen Sie sicher, dass Sie die richtige DbProvider als Npgsql2
Stellen Sie sicher, dass die Npgsql2 provider in Ihren Referenzen (trotzdem können Sie fügen Sie diese auf Ihrer Website.Konfiguration):
Stellen Sie sicher, dass die Npgsql2 data provider installiert, wie erwartet: (Sie können fügen Sie diese zu Ihrem web.config-Datei):
Fügen Sie Ihrer Verbindungszeichenfolge wie üblich:
InformationsquelleAutor kementeus
Müssen Sie ändern aus mithilfe der Klassen im System.Daten.SqlClient, um mit Ihren Entsprechungen im System.Daten.Odbc-namespace. Sie müssen auch erhalten eine ODBC-Treiber, installieren Sie es und richten Sie eine ODBC-Verbindung auf dem server. Dann können Sie diese benannte Verbindung auf Ihre Datenbank zuzugreifen.
InformationsquelleAutor tvanfosson