显示错误/结果消息的可重用方法

本文关键字:方法 消息 错误 结果 显示 | 更新日期: 2023-09-27 18:15:24

我正在开发一个mvc应用程序,当一个动作无效时,我想在屏幕上呈现"错误消息"。

这是我所做的一个例子。

假设如下情况:

int result = _quantityToUse - item.quantityLeft;

在这种情况下,此错误消息可能包含result值不能为负的事实。下面是我在这个例子中所做的:

if(result < 0)
{
   ViewData["ErrorMessage"] = "There are not enough left of this item to use.";
   return View();
}

,在我看来:

@{
    ViewBag.Title = "Object Management";
}
<h2>
    Object Management
</h2>
<span id="emptyMessage">@ViewData["ErrorMessage"]</span>

使用Css,我显示一条错误消息,当我回到控制器操作时,我将其取消,如果存在无效条件,则重新填充。很基本,但很有效。

现在,我的问题是我必须使用这个过滤器管理每个视图。相反,我想处理一些东西,也许是部分视图,我不知道怎么处理,但是一些可以重用的东西,如果我需要修改,只需要修改一次,而不是每次都修改。因为几乎我所有的视图都使用了错误/结果消息,这将是非常有用的。

有人知道我该怎么做吗?谢谢!

显示错误/结果消息的可重用方法

当然,你可以有一个'Error '。如果你的ViewBag有错误,它会渲染错误。你可以把它连接到你的主视图(_layout。cshtml)

在你的主视图中创建一个section,比如:

                <section id="errors">
                    @Html.Partial("_Error")
                </section>

现在,你可能有一个错误。CSHTML,类似于:

@ if (ViewData["ErrorMessage"] != null) {
    <span id="emptyMessage">@ViewData["ErrorMessage"]</span>
}