Ich habe eine Frage bezüglich AppSettings in C#. Zuerst beschreibe ich meine Situation.Welche Verwendung hat die Standarddatei (Assembly) .dll.config für .NET-Assemblies?
Meine Lösung besteht aus einem ausführbaren Programm program.exe
und einem assembly.dll
.
Das Programm verweist auf die Baugruppe und arbeitet damit. Das Assembly-Projekt verfügt über Anwendungseinstellungen, die mit dem Visual Studio-Projekteinstellungen-Manager eingerichtet wurden. Jetzt, wenn ich meine Lösung in meinem Ordner kompiliere, gibt es eine assembly.dll.config
Datei, die die Einstellungen enthält, die ich früher eingerichtet habe.
Nun ist die Sache, die ich verstehe nicht: in meinem Programm-Projekt, bei dem ich die assembly.dll
Referenz I CopyLocal=True
geprüft haben, aber in meinem program\bin\release
Ordner gibt es nur die assembly.dll
aber nicht die assembly.dll.config Datei aber immer noch die assembly.dll
kennt die Einstellungen, die ich in den Anwendungseinstellungen des Assembly-Projekts eingerichtet habe.
Jetzt habe ich mehrmals gelesen, dass Assemblies immer auf die Einstellungen des ausführbaren Programms zugreifen, aber das Programm hat keine entsprechenden Einstellungen, also warum kennt die Baugruppe die richtigen Einstellungen, wenn keine assembly.dll.config
Datei vorhanden ist?
Ich nehme an, dass die Einstellungen in der Assembly kompiliert werden (natürlich), aber dann macht es keinen Sinn, dass in meinem Assembly \ bin \ release-Ordner tatsächlich eine assembly.dll.config-Datei ist.
Ich habe versucht, diese Datei in meinen program\bin\release
Ordner kopieren, wo die assembly.dll
zu auf Build-Aktion kopiert wird, aber die assembly.dll
einfach ignoriert, wenn es eine assembly.dll.config
Datei in dem gleichen Ordner ist. Es verwendet immer die Einstellungen von compiletime. Ich verstehe einfach nicht die Verwendung der assembly.dll.config
Datei. Warum wird es erstellt, wenn es sich nie auf das Verhalten assembly.dll´s
auswirkt?
Haben Sie dort auch eine program.exe.config Datei haben aber? Sind die Einstellungen damit verschmolzen? –
Ja mein Programm.exe hat auch eine Konfigurationsdatei, aber es enthält nur die Konfigurationen für das Programm.Sie sind völlig anders als die Konfiguration der Baugruppe, also kann ich das ganz sicher sagen. – thoros1179