C# 修复C中的System.NullReferenceException#
我正在开发一个网站,一直使用System.NullReferenceException。 在母版页上,我正在使用此代码C# 修复C中的System.NullReferenceException#,c#,asp.net,C#,Asp.net,我正在开发一个网站,一直使用System.NullReferenceException。 在母版页上,我正在使用此代码 if (Request.Url.ToString().ToLower().Contains("content.aspx")) { if (Request.Params["ModuleID"].ToString() == null) { Response.Redirect("Content.aspx?ModuleID=1"); } } 当
if (Request.Url.ToString().ToLower().Contains("content.aspx"))
{
if (Request.Params["ModuleID"].ToString() == null)
{
Response.Redirect("Content.aspx?ModuleID=1");
}
}
当模块Id为空时,它会创建空引用异常。只需调用
ToString()
:
当前您正试图对空引用调用ToString
如果ModuleID存在但为空,则不会重定向。您可能需要:
if (string.IsNullOrEmpty(Request.Params["ModuleID"]))
{
Response.Redirect("Content.aspx?ModuleID=1");
}
只需调用
ToString()
:
当前您正试图对空引用调用ToString
如果ModuleID存在但为空,则不会重定向。您可能需要:
if (string.IsNullOrEmpty(Request.Params["ModuleID"]))
{
Response.Redirect("Content.aspx?ModuleID=1");
}
您必须检查Request.Params[“ModuleID”]是否为null。null没有.ToString(),这就是为什么会出现此异常。 如果使用以下代码,则不应获得NullReferenceException
if (Request.Url.ToString().ToLower().Contains("content.aspx"))
{
if (Request.Params["ModuleID"] == null)
{
Response.Redirect("Content.aspx?ModuleID=1");
}
}
您必须检查Request.Params[“ModuleID”]是否为null。null没有.ToString(),这就是为什么会出现此异常。 如果使用以下代码,则不应获得NullReferenceException
if (Request.Url.ToString().ToLower().Contains("content.aspx"))
{
if (Request.Params["ModuleID"] == null)
{
Response.Redirect("Content.aspx?ModuleID=1");
}
}
你已经说过错误在哪里了。当ModuleID为空(即不存在)时,Params[“ModuleID”]返回null。您已经说过错误在哪里。当ModuleID为空(即不存在)时,Params[“ModuleID”]返回null。