Frage

Ich weiß, dass es mindestens zwei Ansätze, um die Datei web.config zu nutzen:

Nun, mein Problem ist, dass beiden Ansätze gut funktionieren nur für physische Pfade . Aber ich brauche eine Konfigurationsdatei zu adressieren, die in einem virtuellen Verzeichnis ist .

Welche andere Methode konnte ich nutzen, um meine Config-Ressourcen in einem virtuellen Verzeichnis zu setzen?

Hinweis: Ich will es auf diese Art und Weise zu tun, weil ich mehrere Instanzen von meiner Web-Anwendung auf demselben Server (und das auf vielen Servern) habe. Halten Bereitstellung einfach und sauber, ich möchte ein Verzeichnis für alle Dateien halten (aspx, ascx, Bilder, CSS, JS etc.) und die Web-Anwendungen in IIS Punkt für verschiedene Kunden (= Domains, https etc.) zu dieser Einzelverzeichnis. In jedem IIS Web würde ich ein virtuelles Verzeichnis „custom“ genannt, die für jede Bahn in einen anderen Ordner verweist.

Update: Ich möchte darauf hinweisen, dass dieses virtuelle Verzeichnis „custom“ nicht geeignet ist, eine vererbte web.config enthalten - das web.config würde nur für den benutzerdefinierten Ordner gelten die nicht aspx / ascx Dateien enthalten.

War es hilfreich?

Lösung

Ich habe das gleiche Szenario und nach dem Lesen Sie Beiträge verfassen erkannte ich, dass asp.net werden Sie dies nicht zulassen aus verschiedenen Gründen der Sicherheit.

Deshalb wandte ich mich an das Betriebssystem ein Äquivalent zu dem Linux-Soft-Link-Funktion zu finden, die wiederum führte mich in die Junction Dienstprogramm von Sysinternals. Dies kann ein Verzeichnis erstellen, die tatsächlich jedes anderes Verzeichnis auf dem Volume ist und asp.net kann den Unterschied nicht sagen, und so glücklich, lädt die Konfigurationsabschnitte, die eigentlich nicht in einem Unterverzeichnis von Ihnen Website. Funktioniert bei mir:)

Andere Tipps

Virtuelle Verzeichnisse können als Anwendungen eingestellt werden, und Sie können einfach eine andere web.config dort platzieren.

Es werden alle Änderungen von der übergeordneten Konfiguration übernehmen, und Sie können benutzerdefinierte Einstellungen in hinzufügen.

Ich war auf der Suche, das Gleiche zu tun, aber es hat nicht funktioniert, so habe ich beschlossen, das Gegenteil zu tun, wie Sie die web.config wissen vererbt werden kann, so dass ich darauf IIS auf einen Ordner, um die Client-Config (Verbindungszeichenfolge enthält, , Dateipfad usw.) Dateien und die Website-Dateien ich habe sie auf ein virtuelles Verzeichnis mit dem Rest der webconfig (wo es dll und andere Anwendungsdateien benötigt laden) Also im Grunde kann ich die Website-Dateien zu multple Kunden nutzen und die Kunden mit ihrer eigenen Datenbankverbindungszeichenfolge und anderen spezifischen Client-Einstellungen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top