Về cơ bản tôi có một chương trình phụ trợ CMS được xây dựng bằng ASP.NET MVC và bây giờ tôi đang chuyển sang trang web giao diện và cần tải các trang từ cơ sở dữ liệu cms của mình, dựa trên tuyến đường đã nhập. Vì vậy, nếu người dùng nhập domain.com/students/information, MVC sẽ xem trong bảng trang để xem liệu trang có tồn tại có liên kết cố định phù hợp với sinh viên/thông tin hay không, nếu như vậy nó sẽ chuyển hướng đến bộ điều khiển trang và sau đó tải dữ liệu trang từ cơ sở dữ liệu và đưa nó trở lại màn hình để hiển thị.Các tuyến động từ cơ sở dữ liệu cho ASP.NET MVC CMS
Cho đến nay tôi đã cố gắng nắm bắt tất cả tuyến đường, nhưng nó chỉ hoạt động cho hai đoạn URL, vì vậy/sinh viên/thông tin, nhưng không phải/sinh viên/thông tin/mùa thu. Tôi không thể tìm thấy bất cứ điều gì trực tuyến về cách thực hiện điều này, vì vậy tôi mặc dù tôi sẽ yêu cầu ở đây, trước khi tôi tìm và mã nguồn mở ASP.NET MVC cms và mổ xẻ mã.
Đây là cấu hình tuyến đường tôi có cho đến nay, nhưng tôi cảm thấy có cách tốt hơn để thực hiện việc này.
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
// Default route to handle core pages
routes.MapRoute(null,"{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional },
new { controller = "Index" }
);
// CMS route to handle routing to the PageController to check the database for the route.
var db = new MvcCMS.Models.MvcCMSContext();
//var page = db.CMSPages.Where(p => p.Permalink ==)
routes.MapRoute(
null,
"{*.}",
new { controller = "Page", action = "Index" }
);
}
Nếu ai có thể chỉ cho tôi đi đúng hướng trên thế nào tôi sẽ đi về tải trang CMS từ cơ sở dữ liệu, với tối đa ba phân đoạn URL, và vẫn có thể tải các trang lõi, có một bộ điều khiển và hành động được xác định trước.
Cảm ơn bạn rất nhiều, tôi sẽ thử điều này và đánh dấu là câu trả lời nếu nó hoạt động. :) –
Tuyệt vời nó đã làm việc tuyệt vời, chỉ cần thêm một kiểm tra nếu (giá trị [parameterName]! = Null), nhưng nếu không hoàn hảo! Cảm ơn bạn :) –
bạn được chào đón. vui mừng nó đã làm việc ra ngoài. :) – shakib