PDA

View Full Version : مشکل در نوارآدرس هنگامی فراخوانی دوباره یک اکشن



پروگرامنویس
یک شنبه 27 اسفند 1396, 15:55 عصر
درود
میخوام وقتی کاربر رو هر کدوم از آیتم های منوی سایت کلیک میکنه پست های مربوط به اون منو لود شه .بار اول که روی لینک هر آیتم کلیک میکنم درست کار میکنه اما بار دوم نوار آدرس به شکل زیر در میاد و ارور میده و بجایی که یو.آر.ال از اول لود شه اکشن دوبار فراخونی میشه!
147813
کدهای بخش ویو منو:


<ul class="ul-main">
@foreach (var item in Model)
{
if (item.Parent == 0)
{
<li class="li-main">
//خط زیر فرستادن آی.دی منو به اکشن گت-منو
<a href="Home/GetMenu/@item.ID"><i class="@item.Icon"></i>@item.Name</a>
<ul class="ul-sub">
@foreach (var sub in Model)
{
if (sub.Parent == item.ID)
{
<li class="li-sub">
<a href="Home/GetSubMenu/@sub.ID">@sub.Name</a>
</li>
}
}
</ul>
</li>
}
}
</ul>

اکشن GetMenu


// بارگزاری پست ها براساس منو
public ActionResult GetMenu(int id)
{

PostRepository rpPost = new PostRepository();
CommentRepository rpCmnt = new CommentRepository();
ViewModels.HomePage oModel = new ViewModels.HomePage();
oModel.posts=rpPost.Where(w=> w.id_menu==id).OrderBy(d => d.Date).ThenBy(t => t.Time).ToList();
oModel.comments = rpCmnt.Select().OrderBy(d => d.Date).ThenBy(t => t.Time).Take(5).ToList();
return View(oModel);
}

EnKamran
یک شنبه 27 اسفند 1396, 17:56 عصر
این خط رو
<a href="Home/GetSubMenu/@sub.ID">@sub.Name</a>
تغییر بدید به:
<a href="/Home/GetSubMenu/@sub.ID">@sub.Name</a>
یك علامت / به ابتدای ادرس مقصد اضافه كنید

hakim22
دوشنبه 28 اسفند 1396, 10:03 صبح
همانطور که دوستمون گفتن یک / کم دارید اما کلا بجای اینکه درون Href مقدار ثابت قرار بدید از Url استفاده کنید.


<a href="@Url.Action("actionName", "controllerName", new { id = "<id>" })">