如果变量不是我所期望的,则显示错误消息

时间:2015-03-31 12:47:57

标签: c# asp.net-mvc error-handling data-annotations

我在 POST控制器中收到List<int> percentage参数。

我这样做:

var prc = 0;
var prcCount = 0;
foreach (var pr in percentage)
{
    prc += pr;
    prcCount++;
}
if (prc != 100)
    return View();

现在我想要而不是返回View(); 它显示百分比必须为100 的错误消息。我怎么能这样做?

4 个答案:

答案 0 :(得分:2)

在viewbag中添加消息

if (prc != 100)
    {
      ViewBag.PercentageMessage = "your error message."
      return View();
    }

并在视图中检查ViewBag.PercentageMes​​sage是否为空且为空,然后在标签中显示消息。

if (ViewBag.PercentageMessage != null)
{
    string message = Convert.ToString(ViewBag.PercentageMessage);
    if(message != "")
    {
      <label>@message</label>
    }
}

将此代码放在要显示消息的位置

答案 1 :(得分:0)

假设返回类型是ActionResult

return Content("Percentage must be 100");

答案 2 :(得分:0)

 string Percentage = "Percentage must be 100";
 if (prc != 100)
   return Json(Percentage);

答案 3 :(得分:0)

将消息放入ViewBag,ViewData或模型中,并使用jquery显示它。 像这样的东西

ViewBag.Error = "percentage must be 100";

javascript view

var ErrorMessage = @ViewBag.Error;

jquery的

if (ErrorMessage.length>0) {   
       $("#divError").show().html(ErrorMessage); 
}