Frage

Hat jemand irgendwelche Informationen über die aktuellen Versionen von ASP.NET MVC bekommen (Vorschau 5) arbeitet auf Mono 2.0? Es gab Informationen zu den alten Versionen (Preview 2, vielleicht Preview 3), aber ich habe keine Einzelheiten gesehen zu machen Vorschau 5 tatsächlich funktionieren.

Die Mono-Projekt Roadmap für Mono ASP.NET 3.5 zeigt 2.4 (nächstes Jahr). Alle Ideen, wie diese sinnvoll zu erhalten, bevor dann?

Weitere Informationen: Die grundlegende MVC Preview 5 Vorlage scheint zu stehen, so lange, wie ich das Root-Verzeichnis zu vermeiden. Wenn ich die Wurzel beantragen, erhalte ich:

Server Error in '/' Application
The virtual path '' maps to another application.

Description: HTTP 500. Error processing request.

Stack Trace:

System.Web.HttpException: The virtual path '' maps to another application.
  at System.Web.HttpContext.RewritePath (System.String filePath, System.String pathInfo, System.String queryString, Boolean setClientFilePath) [0x00000] 
  at System.Web.HttpContext.RewritePath (System.String path, Boolean rebaseClientPath) [0x00000] 
  at System.Web.HttpContext.RewritePath (System.String path) [0x00000] 
  at MvcApplication1._Default.Page_Load (System.Object sender, System.EventArgs e) [0x00000] 
  at System.Web.UI.Control.OnLoad (System.EventArgs e) [0x00000] 
  at System.Web.UI.Control.LoadRecursive () [0x00000] 
  at System.Web.UI.Page.ProcessLoad () [0x00000] 
  at System.Web.UI.Page.ProcessPostData () [0x00000] 
  at System.Web.UI.Page.InternalProcessRequest () [0x00000] 
  at System.Web.UI.Page.ProcessRequest (System.Web.HttpContext context) [0x00000] 

Version information: Mono Version: 2.0.50727.42; ASP.NET Version: 2.0.50727.42
War es hilfreich?

Lösung

Nun ein Potential ist, dass RewritePath zu / irgendeine Art von Fehler hat, so nur, dass vermeiden. Ändern des RewritePath (Request.ApplicationPath) an:

HttpContext.Current.RewritePath("/Home/Index");

Es scheint, das Problem zu beheben, und zumindest die Demo funktioniert so weit.

Andere Tipps

Asp.Net MVC 1.0 wird mit dem 2,4-Zweig von Mono arbeiten, aber Sie müssen noch die RewritePath in Laden der Seite von default.aspx.cs beheben

Sind Sie mit Mono aus dem SVN oder stabil? Welche Art von Web-Server verwenden Sie? Welche Art von Betriebssystem? Haben Sie Rewrite-Regeln in Ihrem Web-Server?

Ich kann in der Page_Load-Methode in default.aspx.cs mit dieser Vorschau 4 in Linux ausführen

HttpContext.Current.RewritePath(Request.ApplicationPath);
 ((IHttpHandler)new MvcHttpHandler()).ProcessRequest(HttpContext.Current);

Ich brauche das manchmal auch in den Fenstern. Ich habe nicht Version testen 5 in Linux noch, so dass es möglicherweise nicht.

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