我有类型的对象的ID属性基本视图模型MVC模型绑定子类对象属性(所以我可以有它是int或GUID),如下所示:填充有字符串数组
public abstract class BaseViewModel
{
public virtual object Id { get; set; }
}
<input id="Id" name="Id" type="hidden" value="240" />
<input id="FirstName" name="FirstName" type="text" value="John" />
<input id="LastName " name="LastName " type="text" value="Smith" />
当submi:和视图模型因此,从这
public class UserViewModel : BaseViewModel
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
我的HTML则呈现为派生tted到MVC行动:
[HttpPost]
public ActionResult EditUser(UserViewModel model)
{
...code omitted...
}
值的模特属性是:
Id: string[0] = "240"
FirstName: string = "John"
LastName: string = "Smith"
我的问题是,为什么我得到一个一个项目字符串数组作为价值标识 ,而不只是一个字符串?有没有办法改变这种行为?当我尝试将其解析为预期类型时,会导致问题。
尝试检查,如果你有两个项目具有相同的名称。当发生这种情况时,值作为数组发送到服务器 – pollirrata 2013-04-08 19:07:52
这个问题是类似的:http://stackoverflow.com/questions/6809159/ms-mvc3-model-binding-an-object,虽然它没有答案,OP发现相同的问题:获取数组映射到属性定义为'object' – Faust 2013-04-08 19:24:28