更新控制器中的modelobject

时间:2012-07-25 12:59:45

标签: asp.net-mvc-3 c#-4.0 asp.net-mvc-controller

我正在尝试更新模型对象中的用户

   public ActionResult AddJob(JobQueue job,HttpPostedFileBase file)
    {
       job.User = "itdev";

       TryUpdateModel(job) 

       if (ModelState.IsValid)//Always returns false
       {

       }
    }

MODEL

   public class JobQueue { 
   [Required] 
   [Display(Name="JobId")] 
   public string JobId { get; set; } 

   [Required] [Display(Name = "FileName")] 
   public string FileName { get; set; } 

   [Required] 
   [Display(Name = "Job Run Date")] 
   public DateTime JobRunDate { get; set; } 

   [Required] 
   [Display(Name = "Email")] 
   public string Mail { get; set; } 

   [Required] 
   [Display(Name = "User")] 
   public string User { get; set; }

我在分配值后尝试使用TryUpdateModel(作业)和UpdateModel(作业)。这些似乎没有更新模型,因为ModelState.IsValid返回false。有人指向我正确的方向吗?我正在使用MVC3

谢谢,

Sab的

1 个答案:

答案 0 :(得分:0)

我可能在这里错了,但我认为job.User = "itdev";应该足以在不使用TryUpdateModel(job)的情况下更新模型,无论我们如何在我们的网站中这样做。我从来不需要使用任何方法来实际更新模型本身。只需手动分配值。

这取决于我猜测你的模型是如何设置的。

您可能应该为您的模型发布代码,以防我的回答没有帮助。