好吧,这一定是一些愚蠢的东西,我做错了,但我找不到它。
MVC行动:
[AcceptVerbs(HttpVerbs.Post)]
public virtual ActionResult Create(BatchCreateViewModel createModel)
{
return RedirectToRoute(MVC.Home.Display());
}
BatchCreateViewModel:
public class BatchCreateViewModel
{
bool searchAVM;
bool searchBPO;
bool searchAppraisal;
int transactionAge;
string Description;
string uploadfile;
}
View页面上有一些名为“searchAVM”,“searchBPO”,“searchAppraisal”,(复选框)“transactionAge”(一组带整数值的单选按钮)和“description”(文本框)
当我在“Create”的条目处中断时,createModel就在那里,但是具有所有默认值(字符串为null,布尔值为false,int为0)。如果我检查Request.Form,那么值就在那里,但它们只是没有进入模型。
我做错了什么?
(这是MVC 2,框架4。)
答案 0 :(得分:19)
您的视图模型应具有自动属性,而不是公共变量。它之前让我感到惊讶!
所以它应该是:
public class BatchCreateViewModel
{
public bool searchAVM {get;set;}
public bool searchBPO {get;set;}
public bool searchAppraisal {get;set;}
public int transactionAge {get;set;}
public string Description {get;set;}
public string uploadfile {get;set;}
}