首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

MVC3会自动给Model的复杂对象属性赋值吗

2013-09-06 
MVC3能自动给Model的复杂对象属性赋值吗比如Model是这样的public class Model{public int Id{getset}pub

MVC3能自动给Model的复杂对象属性赋值吗
比如Model是这样的
public class Model{
  public int Id{get;set;}
  public string Name{get;set;}
  public IList<Role> Roles{get;set;}
}

其中Role对象为
public class Role{
  public int Id{get;set;}
  public string Name{get;set;}
}

比如View中有3个Role的checkbox 那么checkbox的name属性要写成怎么样子才能自动给Model中的Roles赋值(我只要赋Role的Id就行了) mvc
[解决办法]
var m = new Model() { Id = xxx, Name = xxx };
m.Roles = new List<Role>() { new Role() { Id = xxx, Name = xxx } };
[解决办法]

Model m = new Model();
List<Role> list=new List<Role>();

然后分解动作
foreach (var item in checkbox)
{
    Role R=new Role();
    R.id=this.CheckBox.value;
    R.name=this.CheckBox.Text;
    list.Add(R);
}

m.Roles=list;

热点排行