请教高手 未将对象引用设置到对象的实例

来源:百度知道 编辑:UC知道 时间:2024/05/29 09:38:43
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.IO;
using System.Web.SessionState;

public partial class CarsInfo : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string CarsID = HttpContext.Current.Request.QueryString["车牌号码"].ToString();
SqlConnection con = new SqlConnection("server=(local);database=LL_CarsInsurance;Uid=sa;Pwd=iamocean");
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "select * from CustomerInfo where 车牌号码 = '" + CarsID + "

不管是中文还是英文都一样,注意地址栏,如果没有传递 “车牌号码” 这个参数,就会报错。

解决办法:
通过 Request.QueryString["车牌号码"] 获取参数前先判断参数是否存在,不存在就自动给个默认值:

string CarsID ="";
if(HttpContext.Current.Request.QueryString["车牌号码"]==null)
{
CarsID = "默认值";
}else
{
CarsID = HttpContext.Current.Request.QueryString["车牌号码"].ToString();

}

string CarsID = HttpContext.Current.Request.QueryString["车牌号码"].ToString();
把你传中文的做一个转化就可以了,
例如KeyWord = Server.UrlEncode(KeyWord).ToString().Trim();

string CarsID = HttpContext.Current.Request.QueryString["车牌号码"].ToString();
没有接到参数!不支持中文传参。

传的时候可以把中文转码成E%A%%R这样的URL参数,接收到了再转换回来就行了。

在 21行上边 进行判断
if(request.querystring["车牌号码"]!=null &&request.querystring["车牌号码"].tostring()!="")
{
再执行 21行的代码
}

查询字符串不要用中文
"车牌号码"换成英文的,url参数不支持中文!

你的问题很隐蔽,一