Bazı eski URL'leri desteklemeye çalışıyorum ve bunları denetleyici eylemleriyle eşleştiriyorum. URL'ler şuna benzer: my kontrolör onlarla başaÖzel karakterlerle MVC yolları
İşteroutes.MapRoute(
"LegacyCategory",
"{path}.html",
new { controller = "LegacyCI", action = "Index", }
);
(başlangıcı) var:
public class LegacyCIController : Controller {
public ActionResult Index(string path) {
if (path == "~Address+Labels") {
return RedirectToAction("Display", "Category", new { id = "AddressLabels" });
}
return RedirectToAction("Index", "Category");
}
}
Ben bir kesme noktası ayarlarsanız İşte
/~Home+Office~Note+Pads.html
benim rota var LegacyCIController ve başlangıç sayfamı XXX.html olarak ayarlıyorum, kesme noktası isabetleri (ve
if
başarısız olur) ve hayat iyi. Ancak, başlangıç sayfasını
~Address+Labels.html
olarak ayarlamaya çalıştığımda, herhangi bir kesme noktası vurulmuyor ve Chrome sadece "kusurlar, bu sayfa bozuk görünüyor" yazan bir sayfa gösteriyor.
Bu sayfayı, Visual Studio'dan değil, makinemdeki IIS 7 aracılığıyla çalıştırıyorum.
Bu URL, normal bir MVC yolunun bile işleyemediğinden hatalı mı yoksa yanlış bir şey mi yapıyorum?
Vay, bu oldukça kulağa bir dosya adı. – Tejs
@Tejs - evet, evet öyle. Eski şeylerle uğraşmak hayatın gerçek sevinçlerinden biridir :) –
Teorim, IIS'nin isteği geri döndürdüğü - IIS7'nin kara listeye alınmış bir URL karakter kümesi olduğunu düşünüyorum. – Tejs