【问题标题】:View Models and their effect on Model Binding in ASP.NET MVC?在 ASP.NET MVC 中查看模型及其对模型绑定的影响?
【发布时间】:2013-03-30 20:33:38
【问题描述】:

我相信 ViewModel 是个好东西。我一直在尝试将我的应用程序的一部分转换为使用它们。但是我可能遇到了副作用,那就是它们对模型绑定的影响,特别是 Radiobutton 助手的默认“检查”行为:

@Html.RadioButton("Value",Item.Value)

如果默认模型具有“值”属性,则上述方法有效。但是,如果我使用 ViewModel,那么 Value 可能会下降一级,即:

没有虚拟机

Model.Value

使用虚拟机:

Model.Content.Value;
MyContent = Model.Content.Value;

这不再有效:

@Html.RadioButton("Value",Item.Value)

也许我需要调整 RB 助手?

谢谢。

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-3 viewmodel model-binding


    【解决方案1】:

    尝试使用:

    @Html.RadioButtonFor(m => m.Content.Value)
    

    【讨论】:

    • 很好的提示。 SO很棒 :) 显然,使用这种方法可以直接填充模型。如果创建一个局部变量会发生什么,即“myContentValue”。我猜这是“按值”,需要分配回模型对象。 ----- 或者这不是在视图中做事的方式......即总是直接填充模型而不是通过变量?
    • 是的...总是直接填充模型/视图模型。无需使用单独的变量。这就是 ASP.NET MVC 中所有以 For 结尾的 @Html 助手的目的。他们为您完成艰苦的工作/数据模型绑定。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-15
    • 2021-05-20
    • 2010-09-21
    • 2013-04-02
    • 1970-01-01
    相关资源
    最近更新 更多