دوستان درود و شاد باش
خب عرض شود من یه پروژه ASPDotNetCoreMvc دارم
که یک Area به نام Admin داره ، این Area یک کنترلر به نام Home داره و چندتا اکشن
حالا میخوام وقتی کاره این اکشن تموم شدش ریدایرکت بشه به اکشن Index داخل Area ادمین
public IActionResult Test()
{
return RedirectToAction("Index");
}
ولی نمیدونم چرا میره به اکشن ایندکس کنترلر روت اصلی که اتفاقا اون کنترلر هم اسمش Home هست
ینی بجای اینکه بره به این ادرس
https://localhost:44320/admin/home/Index
میره به این ادرس
https://localhost:44375//home/Index
کلا Area ادمین من رو ادم هم حساب نمیکنه خخخخ
راستی اینم استارت آپم هست
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
endpoints.MapControllerRoute(
name: "areas",
pattern: "{area:exists}/{controller=Home}/{action=Index}/{id?}");
endpoints.MapRazorPages();
});
ممنون میشم راهنمایم کنید
پیشاپیش سپاس 3>
سلام
کد زیر را بنویس
return RedirectToAction("Index"و"Home",new{area="admin"});
ممنون از پاسختون اما این جواب نبود متاسفانه
رفت به این ادرس
https://localhost:44320/admin/home/area=admin
و چیزی نشون نمیده
من توی صفحهات انگلیسی هم سرچ کردم همین پاسخ شمارو دادن و نتیجه یکسان بود
خیلی دوست دارم جواب این سوال رو پیدا کنم
سلام
شما باید در startup کدتان را به شکل زیر تصحیح کنید
endpoints.MapControllerRoute(
name: "areas",
pattern: "{area:exists}/{controller=Home}/{action=Index}/{id?}");
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
endpoints.MapRazorPages();
اول باید کد مربوط به area ها را بنویسید
که شما برعکس نوشته اید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)