我对MVC很新,我正在更新一个web窗体应用程序到mvc。我有一个共享的布局(webforms中的主页),我想设置每个视图的元和标题信息,但我看不到这个选项。谢谢你的帮助。在asp.net中设置页面标题,元信息视图mvc 4
13
A
回答
32
通常,在你的布局,你就会有这样的事情:
<!DOCTYPE html>
<html lang="en">
<head>
<title>@ViewBag.Title</title>
<!-- the rest omitted for brevity -->
的重要组成部分,是@ViewBag.Title
。这位剃刀语法编码并写入ViewBag.Title
的值。 ViewBag
是对动态类型的所有剃须刀视图的属性,它使用ViewData
字典作为其后备存储。 ViewData
只是一个字典,您可以随意存储想要在视图中使用的东西。
在您的控制器,布局或视图中,您可以获取或设置ViewBag.Title
。下面是如何设置它在使用你的布局(称为_Layout.cshtml
在此例)的图为例:
@{
ViewBag.Title = "My View's Title";
Layout = "~/Views/Shared/_Layout.cshtml";
}
您可以从ViewData.ModelMetadata
访问模型的元数据。在这个例子中,我列举了该模型的性能和显示名称:
<ul>
@foreach (var property in ViewData.ModelMetadata.Properties)
{
<li>@property.PropertyName</li>
}
</ul>
0
您需要设置Viewbag.Title
这些文章看相关的,会给你一些指点:
4
在你的控制器的方法。
ViewData["Title"] = "this is page one title";
在您看来,有这样的。 @ViewData["Title"])
如果标题是HTML,它应该是@html.raw(ViewData["TopMessage"])
剃刀引擎是MVC更好,所以我建议你尝试剃须刀,当你创建一个新项目。希望它能帮助你。
1
我喜欢使用操作和控制器名称动态设置页面标题。您可以使用库像Humanizer为“SomeActionName”转换成“有些动作名称”:
public static class HtmlHelperExtensions
{
public static MvcHtmlString GetPageTitle(this HtmlHelper helper)
{
var actionName = helper.GetRouteDataValue("action");
var controllerName = helper.GetRouteDataValue("controller");
return new MvcHtmlString(controllerName.Humanize() + " - " + actionName.Humanize());
}
private static string GetRouteDataValue(this HtmlHelper helper, string value)
{
return helper.ViewContext.RouteData.Values[value].ToString();
}
}
,然后在_layout:
<title>@Html.GetPageTitle()</title>
相关问题
- 1. 如何在ASP.NET MVC视图中设置页面标题?
- 2. 在asp.net中使用强类型视图数据时设置页面标题mvc
- 3. 在ASP.NET MVC中通过子动作设置页面标题
- 4. asp.net mvc - 设置元标记和页标题
- 5. 在ASP.NET MVC 4控制器中设置标题
- 6. Rails将页面标题设置在视图中
- 7. ASP.NET MVC - 设置文化信息
- 8. ASP.NET MVC:在ASP.NET Forms中包含MVC局部视图页面
- 9. 使用ASP.NET MVC Razor视图的CSS。如何将页面设置为设备宽度?元标记不起作用
- 10. ASP.Net MVC 4区域和视图配置
- 11. 如何在ASP.NET MVC中将区域视图设置为主页?
- 12. 简单的Google地图显示在ASP.NET MVC的位置信息页面上
- 13. Yii2从组件视图中设置页面标题
- 14. 在ASP.NET MVC中设置外键4
- 15. 在ASP.NET中的详细信息视图
- 16. 在Spring MVC项目中为Tiles页面设置标题
- 17. 在TYPO3中设置页面标题
- 18. html或由asp.net创建的页面中的页面设置信息
- 19. Asp.Net MVC 4登录页面返回json而不是视图
- 20. Html.CheckBox设置[asp.net的MVC 4]
- 21. 信息结构MVC 4,ASP.NET,C#
- 22. 如何在asp.net中设置模型的页面标题?
- 23. 无法在asp.net中设置页面的标题属性
- 24. 设置页面标题yii2
- 25. 设置页面标题
- 26. 设置页面标题
- 27. MVC 4详细信息页面正在解析2 id的
- 28. Asp.net Mvc:动态页面标题
- 29. 从redirrected页面获取标题信息
- 30. ASP.NET MVC存储页面特定设置
我用同样的方法来设置meta标签 – Kate