ASP.NET判断URL参数是否存在
ASP.NET中,若要将一个URL参数值赋值给一个变量,都得先判断参数是否存在,否则等待你的很可能就是"未将对象引用设置到对象的实例",以前都是
Request.QueryString["xx"] != null比较后再赋值,但今天在一个项目中发现竟还报错,代码大致结构如下:
复制内容到剪贴板
程序代码
int id = 0;
if (Request.QueryString["id"] != null)
id = int.Parse(Request.QueryString["id"]);
后
来发现URL为:http://www.mzwu.com/?id=,原因是Request.QueryString["id"]的值为一个空字符串,所
以通过了Request.QueryString["id"] !=
null的验证,但将空字符串传给int.Parse方法,还是报错了,可见,光判断参数是否存在还是不够的,还必须得进一步判断是否有传值才行,最终代
码改为:
复制内容到剪贴板
程序代码
int id = 0;
if (!string.IsNullOrEmpty(Request.QueryString["id"]))
id = int.Parse(Request.QueryString["id"]);
原因是:当参数不存在时,参数值为null,调用string.IsNullOrEmpty方法,null会自动转换为空字符串;当参数存在但不传值时,参数值为空字符串,string.IsNullOrEmpty很容易就判断出来了!
相关文档:
集合属性相信大家都很熟悉也很常用,如DropDownList,ListBox等控件
﹤asp:DropDownList ID="DropDownList1" runat="server"﹥ ﹤asp:ListItem﹥测试1﹤/asp:ListItem﹥ & ......
1.ASP.NET中使用AJAX时如何弹出对话框
举例如下:
ScriptManager .RegisterStartupScript (UpdatePanel1, UpdatePanel1.GetType(), "", "alert('成功')", true)
下面这个复杂些
ScriptManager .RegisterStartupScript (UpdatePanel1, UpdatePanel1.GetType(), "", "alert('提示:产品添加成功!');if(confirm('是否继续 ......
看了asp.net 的回调技术后不是很理解。还是把写的东西贴下,自己以后学习时候多看看。前台index.aspx页<%@ Page Language="C#" AutoEventWireup="true" CodeFile="index.aspx.cs" Inherits="_Default" %>
<%@ Import Namespace = "System.Text" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transit ......
1. 打开新的窗口并传送参数 [返回目录]
传送参数:
response.write("<script>window.open('*.aspx?id="+this.DropDownList1.SelectIndex+"&id1="+...+"')</script>")
接收参数:
string a = Request.QueryString("id");
string b = Request.QueryString("id1");
2.为按钮 ......