контроллер asp.net mvc с несколькими списками и ссылкой «вернуться к списку» - PullRequest
0 голосов
/ 18 мая 2011

Если у вас есть 5 представлений списка в контроллере, и в каждом списке вы можете перейти к редактированию, детализации или удалению.На странице редактирования, сведений и удаления у вас есть ссылка «Вернуться к списку».Какой лучший способ «запомнить», какое действие списка вы должны вернуть?

В качестве решения я поместил некоторую информацию, такую ​​как CurrentAction, во ViewModel и использовал ее в View.Но если вы хотите использовать это с разными контроллерами вместо одного ... (Вы можете использовать Currentcontroller, CurrentArea, но это не «красивое» решение)

public class MyController : Controller
{
    public ActionResult Index()
        {
        ...
    }

    public ActionResult List2()
        {
        ...
    }

    public ActionResult List3()
        {
        ...
    }

    public ActionResult List4()
        {
        ...
    }

    public ActionResult Create(...)
        {
        ...
    }

    [HttpPost]
    public ActionResult Create(...)
        {
        ...
    }

    public ActionResult Edit(...)
        {
        ...
    }

    [HttpPost]
    public ActionResult Edit(...)
        {
        ...
    }

    public ActionResult Delete(...)
        {
        ...
    }

    [HttpPost]
    public ActionResult Delete(...)
        {
        ...
    }
}

спасибо

Filip

Ответы [ 2 ]

1 голос
/ 18 мая 2011

Вы можете использовать Свойство Request.UrlReferrer , чтобы проверить, откуда пользователь пришел, чтобы удалить или отредактировать экраны. Затем привязать URL, чтобы вернуться к команде списка.

0 голосов
/ 18 мая 2011

Вы можете установить TempData ["ReturnUrl"] в действии вызывающей стороны, а затем использовать его для установки URL-адреса возврата в список гиперссылки.

...