Trong trường hợp của tôi, tôi đang tìm cách đơn giản kết hợp hai tuyến đường 'mã hóa cứng' thành một và vấp ngã khi đăng bài này. Tôi muốn làm sạch RouteConfig.cs
một chút - bởi vì nó có rất nhiều tuyến đường tương tự.
tôi đã kết thúc bằng một số đơn giản 'hoặc' logic trong một biểu thức chính quy và về cơ bản đã thay đổi:
routes.MapRoute(
"UniqueHomePage",
"Default",
new { controller = "Redirector", action = "RedirectToRoot" }
);
routes.MapRoute(
"UniqueHomePage2",
"Home",
new { controller = "Redirector", action = "RedirectToRoot" }
);
Into một con đường duy nhất:
routes.MapRoute(
"UniqueHomePageGeneric",
"{url}",
new { controller = "Redirector", action = "RedirectToRoot" },
new { url = "Home|Default" }
);
Lưu ý cho SEO-savy hoặc -interested : Lý do để trỏ nhiều URL đến một và cùng một hành động, sau đó chuyển hướng chúng đến một và cùng một trang một lần nữa. Trong trường hợp này là trang chủ. Vì vậy, ý tưởng là để ngăn chặn các vấn đề nội dung trùng lặp. Khi bạn sử dụng phương pháp này để trỏ cho NON chuyển hướng hành động, nhưng hành động hiển thị quan điểm riêng của họ, sau đó bạn có thể gây ra vấn đề nội dung trùng lặp: P.
Vì vậy, bất cứ điều gì về chiến lược đều giúp ích cho PageController? – Nix
nhiều hơn trong các dòng ... tôi có một danh sách các url ngẫu nhiên, và tất cả các url ngẫu nhiên phải ánh xạ tới PageController. Lưu ý rằng danh sách đã được xác định ... vì vậy tôi về cơ bản cần lặp qua danh sách và ánh xạ từng url trong danh sách đó đến trang điều khiển –