gpt4 book ai didi

c# - 如何在 ASP.NET 中强制发生 HTTP 错误?

转载 作者:行者123 更新时间:2023-12-02 21:22:24 24 4
gpt4 key购买 nike

IDE:Visual Studio 2013 旗舰版
语言: C# ASP.NET 网页 (aspx)
问题:嗨!我有一个学校作业,正在使用 ASP.NET (C#) 制作一个网站,我需要添加 3 个自定义错误。我知道如何强制出现 404 错误(未找到页面)和 500 错误(页面后面的代码错误),但我需要第三个错误,但我不知道可以强制出现哪些错误。

在我的导航菜单中,我有一个指向“404page.aspx”的 href,但该链接在我的解决方案中不存在,因此我收到 404 错误。
在菜单中,我还有一个指向“500error.aspx”的 href,并且后面的代码(“500error.aspx.cs”)中有错误的代码,因此我收到 500 错误。

Web.Config 文件:

<customErrors mode="On" defaultRedirect="Error.aspx">
<error statusCode="404" redirect="Error.aspx?error=404"/>
<error statusCode="500" redirect="Error.aspx?error=500"/>
<error statusCode="x" redirect="Error.aspx?error=x"/>
</customErrors>

Error.aspx.cs(Error.aspx背后的代码)文件:

protected void Page_Load(object sender, EventArgs e)
{
LabelResult.Text = "";
String errorcode = Request.QueryString.Get("error");
if (errorcode.ToString().Equals("404"))
{
LabelResult.Text = "Page contains a 404 error.";
}
if (foutcode.ToString().Equals("500"))
{
LabelResult.Text = "Page contains a 500 error.";
}

}

所以基本上我需要一个可以使用 C# 或 ASP.NET 强制执行的第三个 HTTP 错误。

最佳答案

您需要访问您无权查看的页面,或者手动在代码后面抛出您自己的错误:

throw new HttpException(403, "Access denied");

关于c# - 如何在 ASP.NET 中强制发生 HTTP 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26705270/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com