【MVC】使用笔记

1,在ASP.NET MVC中,路由机制特别碉堡,直接对应于动作方法。没有必要给每一个动作方法添加视图,当视图返回View时,路由系统会自动寻找指定目录下的视图资源。

1 public ViewResult AutoProperty()

2 {

3        Product p = new Product();

4        p.Name = "Chris";

5        return View("Result", (object)String.Format("你是:{0}", p.Name));

6 }

如AutoProperty时HomeController中的动作方法,并没有指定视图,但是在返回视图的时候,会自动在Views\Home下查找指定的视图资源。

Url为~/Home/AutoProperty。同样验证了URL与动作方法的一致性。

 

2,@HTML

 @Html.DisplayNameFor(model => model.Email)显示属性名称,在定义属性时可以设置DisplayName属性来修改显示的名称。

如:

1         [DisplayName("电子邮件地址")]

2         public string Email { get; set; }

这样,@~处将不显示“Email”,而是显示“电子邮件地址”。

@Html.DisplayFor(modelItem => item.Name),显示的是特定Item的Name值,如:SharpL

 

@Html.ActionLink("Edit", "Edit", new { id=item.ID }) ,ActionLink用来输出超链接,第一个参数指超链接的显示文本,第二个参数指Action,第三个参数为路由参数。

 

@Html.LabelFor(model => model.Name),特定字段的显示名称,对于Email来说任然会显示“电子邮件地址”,所以和DisplayNameFor类似。

二者存在细微的差异,在输出的HTML中,LabelFor输出的内容包含<label>标签,而DisplayFor只会输出属性的显示名称。如图:

1         <div class="editor-label">

2             <label for="Email">电子邮件地址</label>

3         </div>

 

你可能感兴趣的:(mvc)