setting the page title, meta info in a view in asp.net mvc 4

前端 未结 4 1716
不知归路
不知归路 2021-02-12 15:04

I am very new to MVC and I am updating a web form application to mvc. I have a shared layout (masterpage in webforms), I would like to set the meta and title information per vie

4条回答
  •  甜味超标
    2021-02-12 15:37

    Typically, in your layout, you'll have something like this:

    
    
        
            @ViewBag.Title
         
    

    The important part is @ViewBag.Title. This bit of razor syntax encodes and writes the value of ViewBag.Title. ViewBag is a property on all razor views to a dynamic type that uses the ViewData dictionary as its backing store. ViewData is just a dictionary where you can store random stuff that you want to use in your view.

    In your controller, layout, or view, you can get or set ViewBag.Title. Here's an example of how to set it in a view that uses your layout (called _Layout.cshtml in this example):

    @{
       ViewBag.Title = "My View's Title";
       Layout = "~/Views/Shared/_Layout.cshtml";
    }
    

    You can access the model metadata from ViewData.ModelMetadata. In this example, I enumerate the properties of the model and display the names:

      @foreach (var property in ViewData.ModelMetadata.Properties) {
    • @property.PropertyName
    • }

提交回复
热议问题