2017-11-28 3 views
1

Ich habe eine asp.net-Website, die VB.net-Code für einige erweiterte Funktionalität verwendet. Kürzlich musste ich die Verbindungszeichenfolge von dem neueren Access-Datenbank-Typ zu einer älteren Version (ACCDB zu MDB) aufgrund Inkompatibilität-Problems mit meiner aktualisierten Office 64-Bit Office-Office-Installation ändern. Die Neuzuordnung meiner asp.net-Seitentabellen funktionierte ohne Probleme, aber wenn ich den vb-Code ändere und das Projekt ausführte, wurde die alte Datenbankdatei nicht gefunden. Ich habe den Code durchsucht und jeden Verweis auf die alte Datenbankdatei ersetzt, obwohl er immer noch versucht, eine Verbindung zu ihm herzustellen. Bitte beachten Sie den beigefügten Screenshot, der dieses Problem veranschaulicht.VB.NET Verbindungszeichenfolge behält alten Wert

Mapping Issue

+0

Dies ist einer der Gründe, weshalb MS den meisten Benutzern empfiehlt, 32-Bit-Office auch auf 64-Bit-Arbeitsstationen zu installieren. –

+0

Huch! Jetzt, da ich das Codebild sehen kann, zeigt es ein großes Sicherheitsproblem bezüglich SQL-Injektion. Dieser Code verlangt praktisch, gehackt zu werden. Außerdem mögen wir hier keine Bilder von Code. Es macht es schwieriger für uns, Ihnen zu helfen, und deshalb werden Sie wahrscheinlich weniger Hilfe bekommen. Fügen Sie den Code in die Frage ein und verwenden Sie die Code-Schaltfläche im Editor, damit sie korrekt formatiert ist. –

Antwort

0

Problem behoben. Offensichtlich müssen Sie diesen Wert auf allen Seiten in Ihrem asp.net-Projekt ersetzen.

+1

Sie sollten in Erwägung ziehen, mit web.config die Verbindungszeichenfolge an nur einem Speicherort zu speichern, damit sie einfach zu aktualisieren ist. Z.B. [Store-Verbindungszeichenfolge in Web.config] (https://www.connectionstrings.com/store-connection-string-in-webconfig/). –

+0

Ja! Danke! – user7335232

+1

Eine andere Sache, die ernsthaft in Betracht gezogen werden sollte, ist die Verwendung von [SQL Server Express] (https://www.microsoft.com/en-us/sql-server/sql-server-editions-express) anstelle von Access - es ist kostenlos (siehe das Lizenzbedingungen, natürlich) und es ist viel besser, eine Multi-User-Datenbank zu sein. Es kann als Back-End für ein Access-Front-End mit Formularen und sonstigem in einer Desktop-Umgebung verwendet werden. –

Verwandte Themen