2008-10-14 22 views
10

पर एएसपी.नेट एमवीसी पूर्वावलोकन 5 मोनो 2.0 पर काम कर रहे एएसपी.नेट एमवीसी (पूर्वावलोकन 5) के वर्तमान संस्करणों के बारे में कोई जानकारी है? पुराने संस्करणों (पूर्वावलोकन 2, शायद पूर्वावलोकन 3) पर जानकारी थी, लेकिन मैंने पूर्वावलोकन 5 वास्तव में काम करने के बारे में कोई जानकारी नहीं देखी है।मोनो

Mono Project Roadmap मोनो 2.4 (अगले वर्ष) के लिए एएसपी.NET 3.5 इंगित करता है। इससे पहले कि यह उपयोगी कैसे प्राप्त करें, इस पर कोई विचार है?

अधिक जानकारी: मूल एमवीसी पूर्वावलोकन 5 टेम्पलेट काम करता प्रतीत होता है, जब तक कि मैं रूट निर्देशिका से बचता हूं। मैं जड़ अनुरोध करते हैं, मैं:

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 

उत्तर

11

खैर एक संभावित/करने के लिए कि RewritePath है बग के कुछ प्रकार है, तो सिर्फ इतना है कि बचें। करने के लिए RewritePath (Request.ApplicationPath) में बदलना:

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

समस्या को ठीक करने लगता है, और कम से कम प्रदर्शन अब तक काम करता है।

1

क्या आप एसएनएन या स्थिर से मोनो का उपयोग कर रहे हैं? आप किस प्रकार का वेबसर्वर उपयोग कर रहे हैं? किस प्रकार की ऑपरेटिंग सिस्टम? क्या आपने अपने वेब सर्वर में नियमों को फिर से लिखना है?

मैं पूर्वावलोकन 4 लिनक्स में इस के साथ Page_Load विधि में default.aspx.cs

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

मुझे लगता है कि विंडोज़ में कभी कभी भी जरूरत है चला सकते हैं। मैंने अभी तक लिनक्स में संस्करण 5 का परीक्षण नहीं किया है, इसलिए यह काम नहीं कर सकता है।

+0

XSP 2.0, विंडोज, बस डिफ़ॉल्ट MVC पूर्वावलोकन 5 का उपयोग करने का पृष्ठ लोड में RewritePath ठीक करनी होंगी टेम्पलेट। लेकिन अधिक शोध के बाद, ऐसा लगता है कि केवल रिवाइटपाथ ("/") विफल रहता है। हमने जो कुछ भी कोशिश की वह ठीक काम करने लगती है। – MichaelGG

+0

यह भी यहां विफल रहा और यही कारण है कि मैं अनुरोध के अलावा "/" – Paco

+0

के बजाय Request.AplicationPath का उपयोग करता हूं। अनुप्रयोगपैथ "/" के माध्यम से आ रहा है। – MichaelGG

4

Asp.Net MVC 1.0 मोनो का 2.4 शाखा के साथ काम करेंगे लेकिन आप अभी भी default.aspx.cs