当前位置: 首页 > 知识库问答 >
问题:

在ASP.NET MVC中返回错误的最佳实践是什么

季阳朔
2023-03-14

这是我的操作方法

var model= db.PageData.FirstOrDefault();
if (model==null)
{
    //return Error
}

reutrn View(model);

返回此错误的最佳实践是什么?以一种用户友好的方式,并且在发生错误时我可以识别该错误。

共有3个答案

危晨
2023-03-14

MVC 中的全局错误处理

public class MvcApplication : System.Web.HttpApplication
{
    protected void Application_Error(object sender, EventArgs e)
    {
        Exception exception = Server.GetLastError();
        Server.ClearError();
        Response.Redirect("/Home/Error");
    }
}

请在这里查看ASP.NET MVC中的错误处理

须衡虑
2023-03-14

我将创建一个错误视图,如果您预计会出现错误,我将执行如下操作:

if(model == null)
{
    ViewBag.Error = "Your x is not present, please try again later or contact xxx";
    return View("Error");
}

在错误视图中,只需检查ViewBag。出现错误。(错误视图应位于共享视图中)。

注意,我只会在你希望它发生的时候这样做,然后你可以通知用户他们做错了什么。例如,编辑一些东西,你可以把这个视图返回给他们,给他们更多的信息,告诉他们哪里做错了。

佘京
2023-03-14

引发 500 错误:

return new HttpStatusCodeResult(500);

然后处理web.config.中的500个错误

http://benfoster.io/blog/aspnet-mvc-custom-error-pages

 类似资料:
  • 我担心我们返回错误给客户的方式。 我们是否在收到错误时通过抛出HttpResponseException立即返回错误: 或者累积所有错误,然后发送回客户端: 这只是一个示例代码,验证错误或服务器错误都无关紧要,我只是想知道最佳实践,每种方法的优缺点。

  • 如果发生错误,我应该以什么格式将响应返回给API用户?只需将响应作为状态代码和错误消息返回即可: (状态401已返回) 或者最好以这种格式返回:

  • 问题内容: 今天,我在登录表单后面添加了额外的安全检查,以减缓暴力攻击。我有多个登录表单,并提供了一个易于调用的函数,该函数可以进行所有检查,然后返回结果。 问题是结果不是单个值,结果包括: 为此,我创建了一个新类。这一切都很好。 但是我经常有方便的实用程序函数,这些函数会返回多个值,并开始发现每次为结果创建一个新类都有些烦人。 有没有更好的方法来返回多个值?还是我只是懒惰?:) 问题答案: 不,

  • 问题内容: 我刚开始学习Go,并通读现有代码以学习“其他人的做法”。在这种情况下,遍历使用go“工作区”,尤其是与项目依赖关系有关的地方。 在处理各种Go项目时,使用一个或多个Go工作区(即$ GOPATH的定义)的常见(或存在)最佳实践是什么?我应该期望有一个类似于我所有项目的中央代码存储库的Go工作区,还是在我处理这些项目时都明确将其分解并设置$ GOPATH(有点像python) virtu

  • 问题内容: 在 一般的 ,假设你有一个像下面的方法。 在发现错误的该特定方法中,在这种情况下,我不想返回空列表,因为这可能是对此特定方法调用的真正答案,我想返回一些内容以指示参数不正确。因此,在这种情况下,如果出错,我将返回False,否则返回一个列表(是否为空)。 我的问题是,在这样的领域中,不仅针对列表,什么是最佳实践?返回我想要的任何内容,并确保将其记录下来以供用户阅读?:-)你们大多数人都

  • 问题内容: 我将开始使用AngularJS进行客户端和Django进行服务器端项目。 使他们像最好的朋友一样工作的最佳实践是什么(静态文件,身份验证,部署等) 问题答案: 有多种方法可以从Django模板中为客户端模板提供支持,以实现有趣的优化。但是,鉴于Django和AngularJS的模板语言之间的相似之处,在这里几乎不值得付出任何努力。对于此类大多数项目,我会将AngularJS的静态服务与