2015-01-22 3 views
0

Я использую bootstrap с вкладками и контролирую навигацию с идентификатором фрагмента в URL-адресе. Это мое текущее использование от контроллера, который вызывает вид:Перенаправление с идентификатором модели и фрагмента

return RedirectResult(Url.Action("Dashboard", 
            new { id = account.Id }) + "#tab_NotesTab"); 

Это прекрасно работает, но теперь мне нужно передать модель от моего действия. Обычно я передаю его со стандартным синтаксисом:

return View(model); 

Как мне сделать так? Я хочу передать как модель, так и идентификатор фрагмента в представление.

ответ

1

Звучит как решение для TempData!

public ActionResult Index() 
{ 
    // var model = ... 
    TempData["model"] = model; 
    return new RedirectResult(Url.Action("Dashboard", 
    new { id = account.Id }) + "#tab_NotesTab");  
} 

public ActionResult Dashboard() 
{ 
    var model = (MyModelType)TempData["model"]; 

    return View(model); 
} 
+0

Я не следую вашему примеру. Представление Dashboard не передает идентификатор фрагмента, а только модель. – Josh

+0

BTW, я попробовал ваш пример, чтобы увидеть, сохранился ли фрагмент, но я столкнулся с проблемой, что страница не перезагрузилась. Я могу выполнить действия, вызванные и перейти через страницу просмотра cshtml, но когда это будет обработано представление, оно не обновляется на самом деле. – Josh

+0

Звучит как проблема с кешированием. –

Смежные вопросы