با سلام و خسته نباشید
ادرس url من به این شکل هست: به عنوان مثال
test.com/T_user/shop/100/name shop
حالا می خواهم این ادرس رو به این شکل تغییر بدهم باید چه کنم
لطفا راهنمایی کنید:
test.com/name shop
سلام میشه یه مثال بزنید؟
اونا که براتون گذاشتم لینک هستند و داخلشون مثال هم هست
سلام این action من هست
[Route("Home/{name}")] public ActionResult ShopPage(int? id, string name) { if (id==null) { return RedirectToAction("Tanbod", "Home"); } var Product = db.T_Publicity.Where(a => a.Shop_id == id).Select(a => a).ToList(); return View(Product); }
}
که id ونام فروشگاه را بهش پاس دادم.حالا اومد از Route استفاده کردم که ادرسم به این شکل تغییر کند :test.com/name shop ولی خطای
Server Error in '/' Application.The resource cannot be found.
ولی وقتی که route بردارم درست میشه
[RoutePrefix("Home")] {} public class HomeController : Controller
اینم بالا نام controller هم قرار دادم
-------------------------------------------------------
public static void RegisterRoutes(RouteCollection routes) { routes.MapMvcAttributeRoutes(); routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}/{name}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional, name = UrlParameter.Optional } ); }
اشکال از کجاست؟
شما باید id را نیز ارسال کنید تا دریافت کند
اگر نه باید فقط نام را دریافت کنید و بر اساس نام کوئری برنید و ID را دریافت کنید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)