【问题标题】:ASP.NET MVC Model Data BindingASP.NET MVC 模型数据绑定
【发布时间】:2014-12-01 13:05:02
【问题描述】:

有没有办法将数据绑定到类成员?这是一个例子

public class A
{
   public int ID {get; set;}
   public string Description {get; set;}
}

public class B
{
   public int ID {get; set;}
   public string Description {get; set;}
   public A a {get; set;}
}

[HttpPost]
public ActionResult Create(Class B)
{

}

现在我想在一个视图页面中创建一个 B 类对象,发布的数据来自这个页面如下: ID = 1 描述 = “描述 B” A = 1

我希望以上所有数据能够自动填充到实例B中并且MVC能够填充 B类的ID,B类的描述,但是不能将数据填入属于B类的A类。

其实我想要的只是当发布的数据A = 1时,然后MVC可以为B类创建一个A类的新实例,并将A类的ID值设置为1。

我知道可能在 A 类上放了一些属性,它会告诉 MVC 根据这些属性做一些映射。

【问题讨论】:

    标签: asp.net-mvc


    【解决方案1】:

    1 的值如何绑定到 A 类型的复杂属性?这与 A 类的某些属性无关!你需要正确地构造你的 html 以便它可以被绑定

    控制器

    public ActionResult Create()
    {
      B model = new B();
      return View(model)
    }
    
    [HttpPost]
    public ActionResult Create(B model)
    {
    
    }
    

    查看

    @model B
    @using(Html.BeginForm())
    {
      @Html.TextBoxFor(m => m.ID)
      @Html.TextBoxFor(m => m.Description)
      @Html.TextBoxFor(m => m.a.ID) 
      @Html.TextBoxFor(m => m.a.Description)
      <input type="submit" value="Save" />
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-13
      • 2011-03-15
      • 2023-02-01
      • 2013-05-27
      • 2011-01-06
      相关资源
      最近更新 更多