2010-03-24 10 views
7

Wie Sie alle wissen, wird beim Erstellen eines Projekts mit einer Datei app.config in das Verzeichnis bin kopiert und in $ (targetFileName) .config umbenannt.Gib app.config nach dem Build einen anderen Namen?

Ist es möglich, dass es etwas anderes genannt wird?

Zum Beispiel, wenn meine ausführbare Datei myApplication.exe aufgerufen wird, kann ich die Konfigurationsdatei namens settings.config im Gegensatz zu myApplication.exe.config haben?

Prost

+0

Falsch! Das wusste ich nicht. – Spike

Antwort

6

Eine Anwendung mit dem Namen 'myApplication.exe' erwartet, dass die Konfigurationsdatei 'myApplication.exe.config' genannt wird. Wenn es anders benannt ist, wird die Konfigurationsdatei nicht gefunden.

Also ja, Sie können es zu etwas anderem ändern. Aber dann wird es nicht funktionieren.

+1

@Task Ja, ich meinte, kann es geändert werden und immer noch arbeiten. Ich wusste, dass .net nach dem spezifischen Namen sucht. Ich war neugierig, ob es möglich sein sollte, nach einem anderen Namen zu suchen. Prost für die Antwort :) – AndrewC

+0

Sicher, kein Problem. Wenn Sie unbedingt den Namen der Konfigurationsdatei aus irgendeinem Grund angeben müssen, dann kommen Sie in chaotisch Sachen wie folgt: http://blogs.msdn.com/suzcook/archive/2003/06/02/57160.aspx Wirklich die Mühe nicht wert. – Task

2

Sie können einen Post-Build-Schritt, um die Datei umzubenennen.

Beachten Sie, dass .Net nur Konfigurationsdateien mit dem gleichen Namen wie die EXE liest.
Daher ist die Umbenennung nur sinnvoll, wenn Sie über einen eigenen Code zum Lesen der Datei verfügen.

1

Wenn Sie die Datei app.config, die sich in der Projektmappe befindet, in einen anderen Namen umbenennen, wird die Datei myApplication.exe.config nicht mehr generiert. Um die Konfigurationsdatei in das Ausgabeverzeichnis zu kopieren, klicken Sie mit der rechten Maustaste auf newName.config. Und dann ändern Sie das Attribut "In Ausgabeverzeichnis kopieren" in "Immer kopieren"

Beachten Sie, dass myApplication.exe.config ist eine vordefinierte Möglichkeit für C# -Anwendungen, einige Konfigurationseinstellungen zu laden. Wenn keine Konfigurationsdatei gefunden wird, die mit ihrem eigenen Namen übereinstimmt, wird nichts automatisch geladen.

Hoffe, das hilft.

Verwandte Themen