Request.QueryString 未将对象引用设置到对象的实例???
protectedvoidPage_Load(objectsender,EventArgse){if(Request.QueryString["Deleteid"].To...
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["Deleteid"].ToString() == "")
{
Response.Write("<script type=text/javascript> alert('非法操作,您无权单独访问此页面,请按正确流程操作系统!')</script>");
}
else
{
if (!IsPostBack)
{
LoadData();
}
}
}
最简单的一个判断,就是判断页面有没有接受传递过来的参数值,没有就提示用户非法操作,有,就加载数据。
if (Request.QueryString["Deleteid"].ToString() == "") 为什么运行到这里就报未将对象引用设置到对象的实例,我知道页面没有接受到传递值,但是我目前想完成的功能就是如果没有接受到,提示非法。具体这个判断怎么写? 展开
{
if (Request.QueryString["Deleteid"].ToString() == "")
{
Response.Write("<script type=text/javascript> alert('非法操作,您无权单独访问此页面,请按正确流程操作系统!')</script>");
}
else
{
if (!IsPostBack)
{
LoadData();
}
}
}
最简单的一个判断,就是判断页面有没有接受传递过来的参数值,没有就提示用户非法操作,有,就加载数据。
if (Request.QueryString["Deleteid"].ToString() == "") 为什么运行到这里就报未将对象引用设置到对象的实例,我知道页面没有接受到传递值,但是我目前想完成的功能就是如果没有接受到,提示非法。具体这个判断怎么写? 展开
5个回答
展开全部
可以这样
string deleteid=Request.QueryString["Deleteid"]??string.Empty;
if (string.IsNullOrEmpty(deleteid))
{
Response.Write("<script type=text/javascript> alert('非法操作,您无权单独访问此页面,请按正确流程操作系统!')</script>");
}
else
{
if (!IsPostBack)
{
LoadData();
}
}
string deleteid=Request.QueryString["Deleteid"]??string.Empty;
if (string.IsNullOrEmpty(deleteid))
{
Response.Write("<script type=text/javascript> alert('非法操作,您无权单独访问此页面,请按正确流程操作系统!')</script>");
}
else
{
if (!IsPostBack)
{
LoadData();
}
}
更多追问追答
追问
按照你这方法是解决了问题,能解释一下string deleteid=Request.QueryString["Deleteid"]??string.Empty;这个的意思吗? ??string.Empty这个是什么意思呀?
追答
双问号 "??"
当前面的值为null时。就把双问号后面的赋给前面的值, 不为空就返回双问号前面的值
上面的意思是说
当页未传递deleteid时。就让deleteid的值为string.Empty
string.Empty
表示空字符串。此字段为只读。
string a="";
string a=string.Empty;
上面这两个相同。用这个string.Empty更好。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
请给出编辑器的详细出错信息,.net项目在测试的时候,出现未将对象引用设置到对象的实例错误并不一定代表问题出在程序运行中断的部分。
还有,一般情况,既然设置了网址当中的参数传递,就需要事先指定一个默认值,例如为0,用户如果定义了这个参数,就覆盖掉,避免参数没有定义导致的异常!
还有,一般情况,既然设置了网址当中的参数传递,就需要事先指定一个默认值,例如为0,用户如果定义了这个参数,就覆盖掉,避免参数没有定义导致的异常!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
赞同楼上,你试试,因为你取得的值是null,这样会出错,把null转换为空应该可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if (Request.QueryString["Deleteid"].ToString() == null) 试试 NULL和""是2个值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
String.IsNullOrEmpty(Request.QueryString["Deleteid"])试试可以吗
追问
这个不行,我试了,不过楼下的那种方法行。
追答
加个toString()应该就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询