2008-10-14 7 views
10

Quelqu'un at-il des informations à obtenir les versions actuelles de ASP.NET MVC (Preview 5) travaillant sur Mono 2.0? Il y avait des informations sur les anciennes versions (Preview 2, peut-être Preview 3), mais je n'ai vu aucun détail sur le fonctionnement de Preview 5.ASP.NET MVC Preview 5 sur Mono

Le Mono Project Roadmap indique ASP.NET 3.5 pour Mono 2.4 (l'année prochaine). Des idées sur la façon de l'obtenir avant cela?

Plus de détails: Le modèle MVC Preview 5 de base semble fonctionner, tant que j'évite le répertoire racine. Si je demande la racine, je reçois:

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 

Répondre

11

bien un potentiel est que RewritePath à/a une sorte de bug, donc juste éviter cela. Modification du RewritePath (Request.ApplicationPath) à:

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

Semble pour résoudre le problème, et au moins la démo fonctionne jusqu'à présent.

1

Utilisez-vous Mono de svn ou stable? Quel type de serveur Web utilisez-vous? Quel type de système d'exploitation? Avez-vous des règles de réécriture dans votre serveur Web?

je peux courir aperçu 4 sous Linux avec cela dans la méthode Page_Load dans default.aspx.cs

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

J'ai besoin que dans les fenêtres parfois trop. Je n'ai pas encore testé la version 5 sous Linux, donc cela pourrait ne pas fonctionner.

+0

XSP 2.0, Windows, en utilisant simplement la valeur par défaut MVC Preview 5 modèle. Mais après plus de recherches, il semble que seul le RewritePath ("/") échoue. Tout ce que nous avons essayé semble fonctionner correctement. – MichaelGG

+0

Cela a également échoué ici et c'est pourquoi j'utilise Request.ApplicationPath au lieu de "/" – Paco

+0

Sauf Request.ApplicationPath passe par "/". – MichaelGG

4

Asp.Net MVC 1.0 fonctionnera avec la branche 2.4 de mono, mais vous aurez toujours besoin de fixer le RewritePath en charge page de default.aspx.cs

Questions connexes