दिलचस्प पोस्ट
स्क्रीन के शीर्ष पर एक डिवेल स्टिक को कैसे स्क्रॉल किया जा सकता है? लेन-देन स्कोप बनाम लेन-देन LINQ से SQL सेलेनियम वेबड्रिवर का उपयोग करके मोडलडियलोग से कैसे निपटें? iOS7 – रसीद sandbox पर मान्य नहीं है – त्रुटि 21002 (java.lang.IllegalArgumentException) सीतनिद्रा में होना: org.hibernate.LazyInitializationException: प्रॉक्सी प्रारंभ नहीं कर सका – कोई सत्र गोलांग: अनाम संरचना और खाली संरचना जीआईटी ने एक लापता-एम विकल्प के बारे में शिकायत क्यों की है? एंड्रॉइड – टैब जैसे Google Play कैसे निश्चित रूप से निर्धारित चौड़ाई फ़ाइलों को पार्स करने के लिए? JTextPane में विशिष्ट शब्दों का रंग कैसे बदल सकता है? टेक्स्टफील्ड में इनपुट दृश्य जोड़ने में त्रुटि आईओएस 8 कैसे जावास्क्रिप्ट के माध्यम से एक्सेल उत्पन्न करने के लिए पायथन पीई -8 ने जोरदार रूप से इंडेंटेशन के लिए टैब पर रिक्त स्थान की सिफारिश क्यों की है? एचटीएमएल – दो टेबल्स क्षैतिज साइड बाय साइड आर में भूखंडों की श्रृंखला से मूवी बनाना

ASP.NET MVC रूटिंग – मार्गों के लिए .html एक्सटेंशन जोड़ें

मैं एमवीसी और रूटिंग के लिए बहुत ही नया हूँ और मुझे अलग यूआरएल के इस्तेमाल के लिए एप को संशोधित करने के लिए कहा गया। मेरे पास कोई काम नहीं है जो मेरे पास कोई अनुभव नहीं है।

ठीक है, थोड़ी सी बात कीजिए:

routes.MapRoute( "CategoryBySeName", // Route name "products/{SeName}", // URL with parameters new { controller = "Catalog", action = "CategoryBySeName" } ); 

यह अपेक्षित रूप में काम करता है, लेकिन फिर ग्राहक मार्गों के अंत में ".html" चाहता था, इसलिए मैंने बदल दिया:

 "products/{SeName}", // URL with parameters 

सेवा मेरे:

 "products/{SeName}.html", // URL with parameters 

जो विफल रहता है (आईआईएस 404 पृष्ठ – मानचित्रआरसीसीहैंडलर) ऐसा लगता है कि आईआईएस उस आवेदन के पास जाने के बजाए उस नाम के साथ एक भौतिक फाइल को लोड करने की कोशिश कर रहा है।

समान: एएसपी.नेट एमवीसी रूटिंग को एचटीएमएल पृष्ठ पर शुरू करने के लिए (जवाब नहीं, डुप्लिकेट नहीं)

Solutions Collecting From Web of "ASP.NET MVC रूटिंग – मार्गों के लिए .html एक्सटेंशन जोड़ें"

आप अनुमान लगा रहे हैं कि आईआईएस हैंडलर संभवतः एमवीसी से पहले अनुरोध को हथियाने की संभावना है।

आईआईएस 7 मानते हुए: http://technet.microsoft.com/en-us/library/cc770990(v=ws.10).aspx

आईएस में asp.net का उपयोग करने के लिए आपको .html हेन्डलर को संपादित करना होगा।

आप आईआईसी में मैपिंग सेक्शन में एप कॉन्फ़िगरेशन में होम डाइरेक्टरी टैब के तहत इसे वेबसाइट की संपत्तियों में पा सकते हैं I6।

की तर्ज पर कुछ (संस्करण भिन्न हो सकता है): सी: \ windows \ microsoft.net \ framework \ v4.0.30319 \ aspnet_isapi.dll है कि आप को .html फ़ाइलों को नियंत्रित करने की आवश्यकता है।

आपको एएसपी.NET पाइपलाइन के माध्यम से सभी अनुरोधों को बल देना होगा, और आप केवल अपने आवेदन के web.config में इस एकल पंक्ति को जोड़कर ऐसा कर सकते हैं:

 <system.webServer> <modules runAllManagedModulesForAllRequests="true" /> </system.webServer> 

क्लासिक से इंटिग्रेटेड तक एप्लिकेशन पूल बदलना इस मुद्दे को तय किया गया। आपकी मदद के लिए धन्यवाद धन्यवाद

बस इस खंड को वेब। कॉन्फ़िग में जोड़ें, और मार्ग / {* pathInfo} के सभी अनुरोध निर्दिष्ट हैंडलर द्वारा प्रबंधित किए जाएंगे, भले ही पथइन्फो में डॉट्स हों। (सर्विस स्टैक एमवीसी होस्ट वेब। कॉन्फ़िगर उदाहरण से लिया गया है और यह उत्तर https://stackoverflow.com/a/12151501/801189 )

  <location path="route"> <system.web> <httpHandlers> <add path="*" type="System.Web.Handlers.TransferRequestHandler" verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" /> </httpHandlers> </system.web> <!-- Required for IIS 7.0 --> <system.webServer> <modules runAllManagedModulesForAllRequests="true" /> <validation validateIntegratedModeConfiguration="false" /> <handlers> <add name="ApiURIs-ISAPI-Integrated-4.0" path="*" type="System.Web.Handlers.TransferRequestHandler" verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" preCondition="integratedMode,runtimeVersionv4.0" /> </handlers> </system.webServer> </location>