Как установить заголовок HTML главной страницы из действия контроллера или просмотра страницы? - PullRequest
1 голос
/ 10 марта 2010

У меня есть страница действия и просмотра контроллера, которая использует главную страницу.

На главной странице есть раздел заголовка html, например:

<title>this is the page's title</html>

Как я могу получить доступ к этому разделу из действия моего контроллера (предпочтительно) или со страницы просмотра моего действия?

Ответы [ 3 ]

2 голосов
/ 10 марта 2010
<title><%= Model.PageTitle %></html>

public class MasterModel
{
    public string PageTitle { set; get; }
}

public class MyViewModel : MasterModel
{
    /* ... */
}

Вы можете установить свойство PageTitle базового класса в действии контроллера, сколько хотите.

public ActionResult SomeAction ()
{
    MyViewModel model = new MyViewModel ();
    model.PageTitle = "this is the page's title";

    return View (model);
}
1 голос
/ 10 марта 2010

Обычно я задаю настройку заголовка html-страниц через свойство title страницы.

На мой взгляд, у меня есть это ...

<%@ Page Language="C#" Title="Hello World" ... %>

И на моей главной странице у меня есть это ...

<title><%=Page.Title%></title>

Если вы хотите, чтобы контроллер установил заголовок страницы, вам, вероятно, придется отправить заголовок через модель представления.

0 голосов
/ 10 марта 2010

Вставьте нужный заголовок в ViewData из метода Action и затем просто отобразите его на странице ...

В действии метод

ViewData["PageTitle"] = "Page title for current action";

На главной странице

<!-- MVC 1.0 -->
<title><%=Html.Encode(ViewData["PageTitle"]) %></title>

<!-- MVC 2.0 -->
<title><%: ViewData["PageTitle"] %></title>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...