2012-06-08 4 views
1

Спасибо, что прочитали это.@ Html.Action In Layout Page

На странице _Layout.cshtml я использую @RenderPage назвать заголовок:

@RenderPage("/Shared/_header.cshtml") 

Он имеет это:

<div id="Header"> Home </div> 

Хочет сделать интерактивным к действию по умолчанию ("Index «)

Когда я попытался это:

<div id="Header"> @Html.Action("Index", MyController") </div> 

я получаю ошибку:

отверстие "(" не хватает соответствующего закрытия ")" на

@RenderPage("/Shared/_header.cshtml") 

Любая идея?

+0

Вы должны поместить заголовок непосредственно на странице макета. – SLaks

ответ

2

Вам не хватает двойная кавычка открытия на MyController.

Оно должно быть:

<div id="Header"> @Html.Action("Index", "MyController") </div> 
+0

Ох дерьмо; Я слеп ... Итак, я вошел в двойные кавычки, и я получаю эту ошибку: «действие» подчеркнут красным цветом с этой ошибкой: «System.Web.WebPages.Html.HtmlHelper» делает не содержит определения для «действия» и никакого расширения ... – scv

+0

Попробуйте использовать RenderPartial вместо RenderPage: http://stackoverflow.com/questions/4501736/razor-html-partial-vs-renderpage –