好的,我刚刚发现了MVC中的EditorForModel,我想知道何时应该在每个属性上使用它而不是EditorFor?当我添加一个强类型 View 时,为什么不使用它并在每个属性上构建一个EditorFor呢?

我迟到了...但是谢谢你的信息!

最佳答案

由于接受的答案是仅链接的答案(已被删除),我认为我实际上是在回答源自Brad Wilson的Blog的问题:ASP.NET MVC 2 Templates, Part 1: Introduction



TL; DR 可以为EditorFor(model => model)EditorForModel()假定相同的想法;这些辅助方法可以实现相同的目的。 EditorForModel()假定模型表达式是传递给 View 的@model

以以下模型为例:

public class Person
{
    public string Name {get; set;}
    public Address MailingAddress {get; set;}
}

public class Address
{
    public String Street {get; set;}
    public String City {get; set;}
    public String State {get; set;}
}
Create.cshtml:
@model MyNamespace.Models.Person

/* So, you need an Editor for the Person model? */
@Html.EditorForModel()
/*the above is equivalent to @Html.EditorFor(model => model) */

/* you need to specify the Address property that the editor accepts? */
@Html.EditorFor(model => model.MailingAddress)

关于c# - 为什么不使用Html.EditorForModel(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6537220/

10-13 02:04