Ich verwende zuerst eine Oracle DB mit EF 6 Code. Und hat benutzerdefinierte Verschlüsselung für Verbindungszeichenfolge. Verbindungszeichenfolge speichert in separaten Konfigurationsdatei "connstring.config": Es gibt eine klare Verbindung String ohne VerschlüsselungEntity Framework und Verbindungszeichenfolge mit benutzerdefinierter Verschlüsselung
<?xml version="1.0" encoding="utf-8" ?>
<connectionStrings>
<add name="MyConnString" connectionString="Data Source=MySource;User ID=UserID;Password=Password;PERSIST SECURITY INFO=True;"
providerName="Oracle.ManagedDataAccess.Client" />
</connectionStrings>
Datenquellen in web.config-Datei.
MyDbcontext:
public static string GetConnectionString()
{
string encodedConnStr = ConfigurationManager.ConnectionStrings["MyConnString"].ConnectionString.ToString();
string result = Crypto.Decrypt(encodedConnStr);
return result;
}
public MyDbContext() : base(GetConnectionString()){}
Und wenn ich Anwendung ausführen ich erhalte Server-Fehler: Unable Vorgang abzuschließen. Die angegebene SqlConnection gibt keinen anfänglichen Katalog oder AttachDBFileName an.
Wie kann ich das lösen?
Debug Ihre App: richtig entschlüsselt Ihre Verbindungszeichenfolge zu werden? Funktioniert der Connectino String selbst? Führen Sie eine Websuche in der Fehlermeldung aus. – Igor
Ja, Entschlüsselung funktioniert korrekt. Ich habe versucht, Verbindungszeichenfolge direkt in der Basis zu tippen, dasselbe – Drake
Ergebnis gibt korrekte Verbindungszeichenfolge zurück. Fehler wird angezeigt, wenn ich DbContext aufruft – Drake