当我尝试使用“浏览浏览器”选项从VS 2008中的IDE打开页面时,我得到“对象引用未设置为对象的实例”错误。
这段代码我得到了这个错误:
XResult = Request.QueryString["res"];
TextBox1.Text = XResult.ToString();
答案 0 :(得分:6)
此处的问题是XResult
为null
,当您在其上调用ToString
时,代码会生成NullReferenceException
。您需要通过明确的null
检查
TextBox1.Text = XResult == null ? String.empty : XResult.ToString();
答案 1 :(得分:4)
如果您打开没有“res”查询字符串的页面,那么在对它执行任何操作之前,您需要包含对null的检查。
if (Request.QueryString["res"] != null)
{
XResult = Request.QueryString["res"];
TextBox1.Text = XResult.ToString();
}
答案 2 :(得分:2)
该错误可能是因为REquest.QueryString方法没有在url中找到“res”的值,所以当你尝试对一个空对象执行“toString”时,该操作就会出现。
答案 3 :(得分:1)
您的代码需要查询字符串http://localhost:xxxx/yourapp?res=yourval
。它不存在于提供给浏览器的地址中。在项目属性的 web 部分中,您可以提供适当的URL。当然,为了实现这一目的,你需要支持你的代码。
答案 4 :(得分:0)
XResult已经是一个字符串,因此不需要调用ToString。这也应该解决你的问题。
答案 5 :(得分:0)
这里的问题是XResult为null,当你调用ToString
时
代码生成NullReferenceException
。您需要通过执行显式空检查来解释此问题:
if (Request.QueryString["res"] != null)
{
XResult = Request.QueryString["res"];
TextBox1.Text = XResult.ToString();
}