3 Stimmen

Asp.Net System.Web.Routing leitet die URL nicht weiter, wenn nicht .aspx am Ende steht

Ich habe ein seltsames Problem mit dem Routing. Ich habe eine bestehende Website, die ich versuche, dies zu ergänzen. Es funktioniert, aber nur wenn .aspx am Ende der URL steht. Wenn ich die .aspx entferne, erhalte ich eine Fehlermeldung: "Die Ressource kann nicht gefunden werden." Ich habe eine schnelle Test-Website erstellt und den Code dorthin kopiert, sie funktioniert einwandfrei. Der Code der beiden Websites ist identisch. Beide werden auf dem VS 2008 Webserver ausgeführt. Ich verstehe es einfach nicht. Hat jemand eine Idee?

Danke! Vincent

0 Stimmen

Welche Version von IIS? Und wenn 7, welchen Pipeline-Modus verwenden Sie?

0 Stimmen

Ich verwende nur den integrierten Webserver mit VS 2008.

1voto

vincentw56 Punkte 545

Okay, ich habe das Problem gefunden. Ich verstehe nicht, warum dies das Problem verursacht hat, aber wenn irgendwo in der URL ein Punkt (.) steht, kommt es zu Fehlern.

Ich hatte das hier: http://localhost:49463/site.dev/products/keylessentrykits

Als ich es änderte in: http://localhost:49463/sitedev/products/keylessentrykits Wenn man den Punkt zwischen Site und Dev entfernt, funktioniert es einwandfrei.

Hat jemand eine Ahnung, woran das liegt? Ist es ein Fehler?

Außerdem sollte ich vorher etwas gesagt haben, aber dies ist keine MVC-Anwendung.

0 Stimmen

Ja, ich glaube, das ist ein Fehler. Sie sollten es ablegen - connect.microsoft.com/VisualStudio/feedback

0voto

Iain Holder Punkte 13981

Ich denke, Sie müssen die ISAPI dll so einstellen, dass sie alle Dateien verarbeitet (d. h. einen Platzhalter hinzufügen). Es funktioniert, weil es eingestellt ist, um .aspx zu behandeln.

0 Stimmen

Ich verwende nur den integrierten Webserver in VS 2008.

0voto

MomentSurfer Punkte 128

Vielen Dank, dass Sie die Lösung gefunden und veröffentlicht haben. Ich habe genau das gleiche Problem und versuche schon seit Tagen, es zu lösen!

Meine Lösung enthält mehrere Projekte: Web, Geschäftslogik, Datenzugriff usw. Mein Webprojekt hieß "SystemName.WebForms", und beim Kompilieren und Ausführen in der Debugging-Umgebung von Visual Studio wurden nur Routen, die einen Punkt enthielten, richtig weitergeleitet. Sobald ich mein Webprojekt in "SystemName_WebForms" umbenannt habe, wurden alle Routen ordnungsgemäß verarbeitet. Ich vermute sehr, dass dies ein Fehler ist, den Sie entdeckt haben.

Vielen Dank, dass Sie die Lösung gefunden haben und so großzügig waren, sie zu veröffentlichen!

MomentSurfer

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X