Ich verwende ASP.NET MVC Beta und ich erhalte den HTTP 404 (Die Ressource kann nicht gefunden werden) Fehler, wenn ich diese URL, die einen "Punkt" am Ende hat verwenden:
http://localhost:81/Title/Edit/Code1 .
Wenn ich den Punkt am Ende entferne oder der Punkt irgendwo in der Mitte ist, bekomme ich den Fehler nicht.
Ich habe versucht, zu debuggen, aber es bekomme ich den Fehler von "System.Web.CachedPathData.GetConfigPathData(String configPath)" vor ProcessRequest in MvcHandler.
Ist ein "Punkt" am Ende einer URL nicht erlaubt? Oder gibt es eine Möglichkeit, die Routendefinition so zu ändern, dass sie diese Url verarbeiten kann?
Ein Beispiel: Ich habe eine Tabelle mit dem Namen Detail1 [Id(integer), Code(string), Description(string)], die über ihre Id-Spalte eine FK-Beziehung zu Master1 hat. Immer wenn ich einen Datensatz von Master1 auswähle, wähle ich auch den zugehörigen Detail1-Datensatz aus, um das Feld Code zu erhalten. Um diese Verknüpfung nicht jedes Mal durchführen zu müssen (da es in der Regel nicht nur ein Detail gibt, sondern mehrere), verzichte ich auf die Id-Spalte und mache Code PK von Detail1.
Aber wenn ich Id loswerde und Code als PK verwende, dann beginnen meine Routen auch mit dem Code-Feld zu arbeiten, wie: Detail1 \Edit\Code1
Dieser Code kann alles Mögliche enthalten oder am Ende stehen, einschließlich DOT. Es gibt Fälle, in denen ich ein DOT am Ende verbieten kann, aber manchmal ist es wirklich sinnvoll.
Und ich habe auch dies gesehen Beitrag dass die Routen sehr flexibel sein können, so dass ich meine nicht für so seltsam halte.
Deshalb mache ich etwas so Ungewöhnliches. Irgendwelche Vorschläge?
Und warum ist es so seltsam, ein DOT am Ende einer Url zu haben?
0 Stimmen
Ich bin mir nicht sicher, ob das für Sie noch funktioniert, aber ich habe eine aktuelle Lösung für ältere ASP.NET-Versionen hinzugefügt, sehen Sie es sich an ;).
0 Stimmen
Wenn Sie Ihrer Frage zusätzliche Informationen hinzufügen möchten, bearbeiten Sie einfach Ihre Frage (klicken Sie auf den Link "Bearbeiten" unter Ihrer Frage). Wenn Sie sich zu einer Antwort äußern möchten, nutzen Sie die Kommentarfunktion unter der Antwort. Wenn Sie den Platz für Kommentare als unzureichend empfinden, sollten Sie wahrscheinlich eine Bearbeitung vornehmen. Antworten sollten genau das sein: direkte Antworten auf Ihre Frage.