Frage

Ich tue etwas Arbeit mit Web.Routing, es mit freundlichen Urls und schönen Rest auf eine Website wie Schnittstellen zu haben, die im Wesentlichen von einem einzigen IHttpHandler gemacht wird. Es gibt noch keine Webformulare sind, die Handler alle erzeugen die html / json und schreibt sie als Teil der Prozessanforderung.

Das funktioniert gut für Dinge wie / Sites / Buchhaltung zum Beispiel, aber ich kann es nicht für den Site-Stamm an der Arbeit, das heißt ‚/'.

Ich habe versucht, eine Route mit einem leeren String Registrierung mit ‚default.aspx‘ (die die leeren aspx-Datei, die ich in meinem Stammordner mit Cassini zu spielen schön halten und iis). Ich setze RouteExistingFiles auf false explizit, aber was auch immer ich tun, wenn die Wurzel schlagen url es noch default.axpx öffnet, die keinen Code hat es erbt von und enthält ein einfaches h1-Tag zu zeigen, dass ich es getroffen haben.

Ich habe nicht die Standarddatei Umleitung zu einer gewünschten Route ändern will, ich will nur das Äquivalent einer ‚default‘ Route, das angewandt wird, wenn keine andere Wege gefunden werden, ähnlich wie MVC.

Als Referenz wird die vorherige Version der Website nicht genutzt Web.Routing, hatte aber ein Handler in dem web.config verwiesen, die durchaus in der Lage war, die Anforderung von der Wurzel oder default.aspx abfängt.

Specs: ASP.NET 3.5sp1, C #, keine Webformulare, MVC oder openrasta. Plain Old IHttpHandlers.

War es hilfreich?

Lösung

mein eigenes Problem behoben: das Problem ist der integrierte Web-Server, Cassini oder so. Es scheint, dass es spielt schön mit Routing und wird standardmäßig einfach zurückgeben, die default.aspx-Datei oder, wenn diese fehlt, zeigt eine Verzeichnisliste tut.

IIS mit einem virtuellen Verzeichnis funktioniert gut, aber es ist ärgerlich (frust Code Sharer, weil sie brauchen neue virtuelle Verzeichnisse einrichten, wenn sie meine App öffnen und verpestet meine eigene IIS-Instanz. Bah. Wahrscheinlich, was ich tun werde für in dem Moment jedoch, oder das Setup manuell eine neue Anwendung, damit ich die Domain-Host nur Pfad wie das, was in Live existieren kann.

Eine Alternative ist die aktualisierte Version von Cassini zu verwenden, gesehen

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