2015-01-17 5 views
7

मैं एएसपी.नेट एमवीसी 6 का उपयोग कर रहा हूं और कम केस यूआरएल और पीछे स्लैश का उपयोग करने की कोशिश कर रहा हूं।लोअर केस यूआरएल और पिछला स्लैश

मैं निम्नलिखित का इस्तेमाल किया है:

RouteTable.Routes.LowercaseUrls = true; 
RouteTable.Routes.AppendTrailingSlash = true; 

लेकिन यह एक संकलन त्रुटि देता है। सिर्फ यह जानना चाहता था कि क्या एमवीसी 6 के ऊपर करने का एक अलग तरीका है या जैसा हमने एमवीसी 5 में किया था वैसा ही है?

+1

त्रुटि क्या है? – christiandev

+0

http://gurustop.net/blog/2012/09/01/asp-net-mvc-seo-lowercase-url-iis-rewrite-net45-nuget/ – Shell

उत्तर

2

उन एपीआई अभी तक ASP.NET 4.x से मोड़ा नहीं किया गया है ASP.NET 5, जो समर्थन करने के लिए MVC 6.

सुविधा का अनुरोध द्वारा प्रयोग किया जाता करने के लिए (MVC 5.x द्वारा इस्तेमाल किया और पुराने) लोअरकेस यूआरएल यहां लॉग इन हैं (और अभी तक हल नहीं किया गया है): https://github.com/aspnet/Routing/issues/140 (कृपया ध्यान दें कि यह रूटिंग रेपो में है क्योंकि यह एक रूटिंग सुविधा है और एमवीसी के लिए विशिष्ट नहीं है)।

+1

एएसपी.नेट एमवीसी अब ओपन-सोर्स है। बंदरगाह के लिए कितना मुश्किल हो सकता है? –

+1

@ रॉबर्ट हार्वे एमवीसी वास्तव में कई सालों से खुला स्रोत रहा है। इस मामले में यह कठिनाई का सवाल नहीं है, बल्कि शेड्यूलिंग और प्राथमिकता है। मैंने इस प्रश्न का उत्तर देने के बाद गिटहब पर मुद्दे अनुरोध में "+1" जोड़ा था, ताकि प्रभावी रूप से प्राथमिकता में टक्कर हो। – Eilon

+1

ओह, रुको। मैंने अपने प्रश्न का उत्तर दिया; एमवीसी 4 ओपन-सोर्स नहीं था, है ना? –

22

अब आप रूटरिंग इंजन को लोअरकेस यूआरएल का उपयोग करने के लिए एड्रॉउटिंग का उपयोग कर सकते हैं। इस कोड को Startup.cs फ़ाइल में चला जाता है:

public void ConfigureServices(IServiceCollection services) 
{ 
    // ...ommitted code 

    services.AddRouting(options => 
    { 
     options.AppendTrailingSlash = true; 
     options.LowercaseUrls = true; 
    }); 
} 
+0

यह बढ़िया है! पहले सत्य – emzero

+0

के बाद एक अर्धविराम याद किया जाता है .NET कोर 1.0.1 से सही सिंटैक्स 'सेवाएं है। कॉन्फ़िगर करें <रूटऑप्शन> (विकल्प =>' सेवाओं के बजाय। कॉन्फ़िगरर रूटिंग (विकल्प => ' – rafalkasa

+0

'AddRouting का उपयोग करने के लिए अपडेट किया गया ' –

5

नेट कोर से स्लैश लागू करने के लिए सही सिंटैक्स 1.0.1 और छोटे यूआरएल है:

public void ConfigureServices(IServiceCollection services) 
{ 
    // Omitted code 
    // ... 

    // Configure routing. 
    services.Configure<RouteOptions>(options => 
    { 
     options.AppendTrailingSlash = true; 
     options.LowercaseUrls = true; 
    }); 
} 
+0

क्या यह एएसपीनेट कोर 2.0 में बदल गया है? – zuckerthoben

संबंधित मुद्दे