MVC3中提交数据库数据后如何清除模型

2024-01-03

我正在数据库中提交一些数据,提交后我想显示同一页面。但我正在查看页面,文本框值不为空。

ModelState.Clear();

我曾经用来清除文本框。

但文本框值仍然保留。请建议我在mvc3中提交后清除模型。

public ActionResult AddNewCategory(CategoryViewModel model) {
  if (ModelState.IsValid) {
    int result = 0;
    var categoryEntity = new Category {
      CategoryName = model.CategoryName, CategorySlug = model.CategorySlug
    };
    result = Convert.ToInt32(_categoryRepository.AddNewCategory(categoryEntity));
    if (result > 0) {
      ModelState.Clear();
    }
  }
  return View(model);
}

您将获得相同的模型,因为您将其传递给视图View(model)。这里有几个选项:要么传递一个空模型,要么重定向到后操作的 get 变体。

1)

   if (ModelState.IsValid) 
   { 
      //saving
      if (result > 0) 
      {
         ModelState.Clear();
         return View(new CategoryViewModel()); 
      }          
   } 

2)

   if (ModelState.IsValid) 
   { 
      //saving
       if (result > 0) 
       {   
           return RedirectToAction("AddNewCategory");
       }
   }

PS:我强烈建议使用第二种方法,因为您可能想要进行其他数据库调用来构建模型,并且您不想在多个地方执行此操作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MVC3中提交数据库数据后如何清除模型 的相关文章

随机推荐