noch mal Config und Assemblies...

08/10/2007 - 19:03 von Holger Vorberg | Report spam
Hallo zusammen,

auch wenn ich bezüglich des Themas schon mal nachgefragt habe, so habe ich
noch keine richtig Lösung.

Im Moment kommt noch etwas anderes hinzu:

In einer ASP.NET Anwendung verwende ich einige .DLLs (.net Assemblies in C#
programmiert).
In den .DLLs befinden sich lediglich DataSets, und die werden als
Datenquelle für diverse ObjectDataSource Objekte in der ASP.NET Webseiten
verwendet. Zu den .DLLs gibt immer jeweils eine APP.Config, in der sich
außer einem Connectionstring nicht viel befindet. Die .DLLs befinden sich
zur Laufzeit im /bin Unterverzeichnis meiner ASP.NET Anwendung, genauso wie
die jeweiligen .config Dateien. Leider werden diese aber gar nicht
verwendet. Ich habe festgestellt, dass beim Erstellen der .DLLs der
Conectionstring dort mit hinein kompiliert wird. Das finde ich irgendwie
unpraktisch. Ich ging davon aus, dass ich "einfach" den Connectionstring in
der .config Datei àndern könne. Stattdessen wird aber in jedem Projekt, eine
"Settings.Designer.cs" Datei generiert in der sich folgender Konstrukt
befindet:

[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)]
[global::System.Configuration.DefaultSettingValueAttribute("Data
Source=Mypc\\sqlexpress;Initial Catalog=MyDataBase;Integrated
Security=True")]
public string ISMS_CoreDataConnectionString {
get {
return ((string)(this["ISMS_CoreDataConnectionString"]));
}
}

Kann mir das einer mal erklàren. Und kann ich das irgendwie àndern?
Ich will, dass zur Laufzeit der Connectionstring aus der entspr. .config
gelesen wird. Hier ist er aber vom Designer "hardcodiert" worden.

Tschüß,
Holger Vorberg
 

Lesen sie die antworten

#1 Thomas Bandt
09/10/2007 - 12:42 | Warnen spam
Hi,

Holger Vorberg schrieb:
auch wenn ich bezüglich des Themas schon mal nachgefragt habe, so habe
ich noch keine richtig Lösung.



mensch, das haste aber jetzt lange vor dir hergeschoben ;-).

In einer ASP.NET Anwendung verwende ich einige .DLLs (.net Assemblies in
C# programmiert).
In den .DLLs befinden sich lediglich DataSets, und die werden als
Datenquelle für diverse ObjectDataSource Objekte in der ASP.NET
Webseiten verwendet. Zu den .DLLs gibt immer jeweils eine APP.Config, in
der sich außer einem Connectionstring nicht viel befindet. Die .DLLs
befinden sich zur Laufzeit im /bin Unterverzeichnis meiner ASP.NET
Anwendung, genauso wie die jeweiligen .config Dateien. Leider werden
diese aber gar nicht verwendet.



App.config ist hier auch nicht gefragt, bei Webprojekten wird stets
auf Web.config zugegriffen. Kopiere einfach alle Einstellung aus allen
einzelnen (!) app.configs in die web.config (also die Connectionstrings
in <connectionStrings />), und schon ist der Zugriff darauf im Kontext
des Webs möglich.

Ich habe festgestellt, dass beim
Erstellen der .DLLs der Conectionstring dort mit hinein kompiliert wird.



Da kann ich nicht helfen.

Gruß, Thomas [MVP ASP/ASP.NET]
http://www.69grad.de - Beratung, Entwicklung
http://blog.thomasbandt.de - Thomas goes .NET

Ähnliche fragen