我正在使用.Net应用程序,下一页将为用户的个人资料生成一个页面
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h1>Profile for user: <%= _profile.Username %></h1>
<h2>Purchases</h2>
<% foreach (var purchase in _purchases) { %>
<h3><%= purchase.Id %>: <%= purchase.Quantity %> items at $<%= Math.Round(purchase.Price / 100.0) %>.</h3>
<% } %>
</div>
</form>
</body>
</html>
这是背后的CS代码-
public partial class profile : System.Web.UI.Page
{
protected Profile _profile;
protected List<Purchase> _purchases;
protected void Page_Load(object sender, EventArgs e)
{
ProfileHelper.IncrementActiveRequests();
try
{
var username = Context.Request.QueryString["username"];
if (String.IsNullOrEmpty(username))
{
throw new ArgumentException("Missing required parameter: username");
}
else
{
_profile = ProfileHelper.GetProfile(username);
// Extract the purchases
_purchases = _profile.Purchases;
}
}
finally
{
ProfileHelper.DecrementActiveRequests();
}
}
}
我遇到的问题是页面不断从GET用户名请求中抛出HTTP 500错误。有没有办法可以捕捉到此错误?
答案 0 :(得分:0)
主要问题是获取错误描述。我假设您处于生产环境中,因为通常在开发中错误会清楚显示。您可以重写页面的OnError方法以获取确切的错误。也可以处理page_error事件。 否则,您可以在global.asax的Application_error上获取它