相关疑难解决方法(0)

如果ModelState.IsValid失败,请获取错误消息?

我在我的控制器中有这个功能.

[HttpPost]
public ActionResult Edit(EmployeesViewModel viewModel)
{
    Employee employee = GetEmployee(viewModel.EmployeeId);
    TryUpdateModel(employee);

    if (ModelState.IsValid)
    {
        SaveEmployee(employee);
        TempData["message"] = "Employee has been saved.";
        return RedirectToAction("Details", new { id = employee.EmployeeID });
    }

    return View(viewModel); // validation error, so redisplay same view
}
Run Code Online (Sandbox Code Playgroud)

它一直失败,ModelState.IsValid不断返回false并重新显示视图.但我不知道错误是什么.

有没有办法获取错误并将其重新显示给用户?

c# asp.net asp.net-mvc

65
推荐指数
5
解决办法
11万
查看次数

为什么ModelState.IsValid总是在mvc中返回false

在我的控制器中这段代码:

[HttpPost]
        public ActionResult Edit(Company company, FormCollection IsCostCenters)
        {
            if (ModelState.IsValid)
            {
                Company objNewCompany = new Company();
                //oParty.CostCenters.Clear();

                using (PaymentAdviceEntityContainer db1 = new PaymentAdviceEntityContainer())
                {
                    objNewCompany = db1.Companies.Find(company.Id);

                    objNewCompany.CostCenters.Clear();

                    string[] temp = IsCostCenters["CostCenters"].Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                    foreach (var s in temp)
                    {
                        if (s != "false")
                        {

                            CostCenter oCostCenter = new CostCenter();
                            oCostCenter = db1.CostCenters.Find(Convert.ToInt32(s));
                            objNewCompany.CostCenters.Add(oCostCenter);
                        }
                    }
                    db1.SaveChanges();
                }

                db.Entry(company).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Index");
            }
            ViewBag.CreatedById = new SelectList(db.Employees, "Id", "FirstName", company.CreatedById);
            return View(company);
        }
Run Code Online (Sandbox Code Playgroud)

我的观看代码如下 …

c# asp.net-mvc

33
推荐指数
2
解决办法
10万
查看次数

ModelState.IsValid始终返回false

[HttpPost]
public ActionResult Create(Users user)
{
    if (ModelState.IsValid)
    {
        db.Users.Add(user);
        db.SaveChanges();
        return RedirectToAction("Index");  
    }

    return View(user);
}
Run Code Online (Sandbox Code Playgroud)

ModelState.IsValid总是假的.
所以它只是返回视图并且没有添加新记录..

编辑

用户:

public class User
{
    public int UserID { get; set; } 
    public string Name { get; set; } 
    [Display(Name = "Confirm Password")] [DataType(DataType.Password)] 
    public string ConfirmPassword { get; set; } 
    public string Designation { get; set; } 
    [Display(Name = "Date of Join")] [DataType(DataType.Date)] public DateTime DOJ { get; set; } 
    public string Email { get; set; } 
    [Display(Name …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc modelstate asp.net-mvc-3

26
推荐指数
1
解决办法
4万
查看次数

标签 统计

asp.net-mvc ×3

c# ×2

asp.net ×1

asp.net-mvc-3 ×1

modelstate ×1