我为Northwinds DB's product
表创建了scaffolded视图。我知道它正在new {@class...
创建匿名类型。但是,我在下面的代码中并没有理解部分htmlAttributes:
。它在做什么?
@Html.LabelFor(model => model.UnitsInStock,
htmlAttributes: new { @class = "control-label col-md-2" })
它与new { htmlAttributes = new { @class = "form-control" }
这段代码有什么不同?我希望我能正确地提问。我在Visual Studio 2015中使用了MVC 5.
答案 0 :(得分:2)
htmlAttributes:
指定了一个命名参数,因此它将匿名对象(new { @class = "control-label col-md-2"
)传递给htmlAttributes
方法的LabelFor()
参数。
在这种情况下,它不是绝对必要的,因为LabelFor()
有overload只接受表达式和object
所以它也可能只是
Html.LabelFor(m => m.UnitsInStock, new { @class = "control-label col-md-2" })
但是使用命名参数允许您以任何顺序指定方法的参数。
的文档