2013-08-14 4 views
2

У меня есть макет, содержащий древовидную структуру. Treeview заполняется AddressBookController и отображается на каждой странице с @RenderPage("addressbook.cshtml") (в настоящее время он находится в Shared). Проблема с этим состоит в том, что у меня есть тесная связь между видом и контроллером, как в верхней части моей AddressBook.cshtml У меня есть следующий код:Render partial view (with action action) from another view

@{  
    var controller = new EstateManagerUI.Controllers.AddressBookController(); 
    var topLevelFolder = controller.GetAddressBook(0); 
} 

Как я могу вынести частичный вид из контроллера, так что я может выглядеть как обычный вид?

ответ

0

Создать действие контроллера, который возвращает PartialViewResult

public ActionResult MyAction() 
{ 
    // do some stuff 
    return PartialView("_MyPartialView", myModel); 
} 

, а затем делает это на вашей странице с помощью @Html.Action("MyAction")