بسته

شخصی سازی URL محصولات و تولید کنندگان

5 سال پیش
#1302 نقل قول
سلام دوستان خوبم. بنده قصد دارم لیست محصولات و تولیدکننده ها رو با URL شامل ID اونها نشون بدم.
یعنی اینطوری: www.mysite.com/products/product-110
چطور این رو پیاده سازی کنم؟
0
5 سال پیش
#1303 نقل قول
متد RegisterRoutes رو در GenericUrlRouteProvider  به این صورت ویرایش کردم اما مشکلاتی داره

routeBuilder.MapLocalizedRoute("Manufacturer", "manufacturers/{SeName}",
                new { controller = "Catalog", action = "Manufacturer" });


مشکلی که هست، اینه که وقتی موس رو روی لینک نگه میدارم، لینک موردنظرم رو نشون میده اما وقتی کلیک میکنم، صفحه ی ارور 404 میاد
0
5 سال پیش
#1304 نقل قول
سلام

این تغییرات رو انجام بدید.

در GenericPathRoute.cs:


protected RouteValueDictionary GetRouteValues(RouteContext context)
{
   //remove language code from the path if it's localized URL
   var path = context.HttpContext.Request.Path.Value;

   if(path.StartsWith("/manufacturers/", StringComparison.OrdinalIgnoreCase)
      || path.StartsWith("/products/", StringComparison.OrdinalIgnoreCase))
   {
      path = path.RemoveLanguageSeoCodeFromUrl(context.HttpContext.Request.PathBase, false);
   }
   ...


در GenericUrlRouteProvider.cs:


public void RegisterRoutes(IRouteBuilder routeBuilder)
{
    ...
    routeBuilder.MapLocalizedRoute("Product", "products/{SeName}",
                new { controller = "Product", action = "ProductDetails" });

    routeBuilder.MapLocalizedRoute("Manufacturer", "manufacturers/{SeName}",
                new { controller = "Catalog", action = "Manufacturer" });
0
اگر پاسخ سوالی برای شما مفید بود، به آن رای مثبت دهید تا به دیگران در پیدا کردن پاسخ مناسب کمک کنید
*******************************************************************************************
Be Who You Always Wanted To Be
دسته بندی ها