相关疑难解决方法(0)

ASP.net MVC - 用于POST操作的单独ViewModel

在我的MVC应用程序中,我有一个看起来与此类似的View Model:

public class ComplexViewModel
{
    public ComplexDetailsViewModel Details1 { get; set; }
    public ComplexDetailsViewModel Details2 { get; set; }
}

public class ComplexDetailsViewModel 
{
    public int Id { get; set; }
    public string DisplayValue1 { get; set; }
    public string DisplayValue2 { get; set; }
    // ...
}
Run Code Online (Sandbox Code Playgroud)

我原本在以下视图中执行以下操作:

@Html.HiddenFor(model => model.Details1.Id)
@Html.HiddenFor(model => model.Details2.Id)

@Html.DisplayFor(model => model.Details1.DisplayValue1)
...
Run Code Online (Sandbox Code Playgroud)

我会将完整的模型发布到控制器:

 public ActionResult Post(ComplexViewModel model)
Run Code Online (Sandbox Code Playgroud)

除了Id值之外,我实际上并不需要ComplexViewModel中的任何内容,因此我决定创建另一个专门用于POST数据的视图模型:

public class PostViewModel
{
    public int Details1Id { get; set; }
    public int Details2Id …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc viewmodel

3
推荐指数
1
解决办法
4759
查看次数

标签 统计

asp.net-mvc ×1

c# ×1

viewmodel ×1