Ich migriere eine vorhandene Webanwendung (mit Entity Framework 5) zu einer Azure-Webrolle.Entity Framework DbContext in der Azure-Webrolle
Die Datenbankverbindungszeichenfolge wird von den Dateien web.config
in die Dateien ServiceConfiguration.*.cscfg
verschoben.
Das Problem ist, dass in der automatisch generierteModel.Context.cs
Datei wird meine Entitäten Klasse wie folgt definiert:
public partial class MyEntities : DbContext
{
public MyEntities()
: base("name=MyEntities")
{ }
// DbSets, etc
}
Dies wird immer für MyEntities
Blick in den web.config
. Wie kann ich diesen Konstruktor überschreiben, so dass ich die Verbindungszeichenfolge aus der Datei ServiceConfiguration.*.cscfg
übergeben kann?
ich von dieser Klasse ableiten könnte, etwa so:
public class MyCloudEntities : MyEntities
{
public MyCloudEntities()
: base(CloudConfigurationManager.GetSetting("MyEntities"))
{ }
}
Aber dann muß ich jede Instanziierung MyEntities
in der Code-Basis ändern, und es wird nicht verhindern, dass Entwickler von MyEntities
in Zukunft verwenden.
Warum möchten Sie die Verbindungszeichenfolge in der azure-Konfigurationsdatei speichern? Müssen Sie die Verbindungszeichenfolge zur Laufzeit ändern? – Fore
Nein, aber die Verbindungszeichenfolge ist für jede Umgebung unterschiedlich. – davenewza