繁体   English   中英

你调用的对象是空的

[英]Object reference not set to an instance of an object

当我尝试使用“VIEW IN BROWSER”选项从VS 2008中的IDE打开页面时,我得到“对象引用未设置为对象的实例”错误。

这段代码我得到这个错误:

 XResult = Request.QueryString["res"];    
 TextBox1.Text = XResult.ToString();

这里的问题是XResultnull ,当你在其上调用ToString时,代码会产生NullReferenceException 您需要通过执行显式null检查来解释此问题

TextBox1.Text = XResult == null ? String.empty : XResult.ToString();

如果您打开没有“res”查询字符串的页面,那么在对它执行任何操作之前,您需要包含对null的检查。

if (Request.QueryString["res"] != null)
{
    XResult = Request.QueryString["res"];
    TextBox1.Text = XResult.ToString();
}

这个错误可能是因为REquest.QueryString方法没有在url中找到“res”的值,所以当你尝试对一个空对象执行“toString”时,该对象执行该操作。

您的代码需要查询字符串http://localhost:xxxx/yourapp?res=yourval 它不存在于提供给浏览器的地址中。 在项目属性的Web部分中,您可以提供适当的URL。 当然,为了实现这一目的,支持你的代码是可取的。

这里的问题是XResult为null,当你在其上调用ToString时,代码会产生NullReferenceException 您需要通过执行显式空检查来解释此问题:

if (Request.QueryString["res"] != null)
{
    XResult = Request.QueryString["res"];
    TextBox1.Text = XResult.ToString();
}

XResult已经是一个字符串,因此不需要调用ToString。 这也应该解决你的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM