为什么会出现未将对象引用设置到对象的实例 本帖最后由 u012619485 于 2013-11-04 16:35:21 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 单步调试一下,看看insertstring这个值是什么。 "'"+txt1zhiliaofangshi+"',"+"'"+txt2jiliang+"',"+ "'"+txt3jihua+"',"+"'"+txt4shiji+"',"+ "'"+txt5starttime+"',"+"'"+txt6endtime+"',"+ "'"+txt7remindtime+"'"这里的信息都附值了吗?null+ 任何信息=null public class sqlcon{ SqlDataAdapter sda = new SqlDataAdapter(con()); public void con() { SqlConnection contest = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=E:\\ghhisweb\\ghhisweb.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"); contest.Open(); } public void setinsert(string tablename,string insertstring) { sda.InsertCommand.CommandText = "insert into " + tablename.ToString() + " values (" + insertstring.ToString() + ")"; //此处出现未将对象引用设置到对象的实例 } 页面文件: protected void lkupdzlxx_Click(object sender, EventArgs e) { //sqlcon scn = new sqlcon(); //scn.con(); this.setinsert("治疗信息", "'"+txt1zhiliaofangshi+"',"+"'"+txt2jiliang+"',"+ "'"+txt3jihua+"',"+"'"+txt4shiji+"',"+ "'"+txt5starttime+"',"+"'"+txt6endtime+"',"+ "'"+txt7remindtime+"'"); }学习一下sqlparameter用法吧,拼接容易被注入 调试一下,看看“tablename”和“insertstring”是否为null。 什么原因你学断点 调试了另外学学分层吧,孩子~学学EF吧,孩子~tablename.ToString() 本身是string类型的就不要ToString() 页面加个label ,看看str输出了什么。无论tablename还是insertstring出现null,都会有这个错误提示的。调试下,看看。string str= "insert into " + tablename.ToString() + " values (" + insertstring.ToString() + ")"; label.Text=str; 我调试insert语句正常,在insert语句之前添加了一句 sda.InsertCommand.CommandType = CommandType.Text;然后为将对象引用的错误提示出现在这句话上了。这是什么问题呢,以前用SqlDataAdapter的时候没有接触insertcommand 不太懂。 //问题已经解决 将sda.InsertCommand.CommandText = "insert into " + tablename.ToString() + " values (" + insertstring.ToString() + ")";//改为sda.InsertCommand =new SqlCommand( "insert into " + tablename.ToString() + " values (" + insertstring.ToString() + ")"); 关于一个。net水晶报表系统 FTP上传传送文件的问题 网站上线碰到了.net版本的问题??? The server tag is not well formed asp.net sql ewebeditor 图像热点功能? 【!!!!虚拟目录配置出错!!!!】 asp.net怎么获取字符串数组的大小? 大家来看看!!!怎样取得html中activex 中方法返回的数据?? 如何把 name 转换为 int数组参数 加入下面的SQL语句 try..catch中Response.Redirect异常的解决 如何使用Membership进行AD用户登陆验证
"'"+txt3jihua+"',"+"'"+txt4shiji+"',"+
"'"+txt5starttime+"',"+"'"+txt6endtime+"',"+
"'"+txt7remindtime+"'"
这里的信息都附值了吗?null+ 任何信息=null
{
SqlDataAdapter sda = new SqlDataAdapter(con());
public void con()
{
SqlConnection contest = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=E:\\ghhisweb\\ghhisweb.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
contest.Open();
}
public void setinsert(string tablename,string insertstring)
{
sda.InsertCommand.CommandText = "insert into " + tablename.ToString()
+ " values (" + insertstring.ToString() + ")"; //此处出现未将对象引用设置到对象的实例
}
页面文件:
protected void lkupdzlxx_Click(object sender, EventArgs e)
{
//sqlcon scn = new sqlcon();
//scn.con();
this.setinsert("治疗信息",
"'"+txt1zhiliaofangshi+"',"+"'"+txt2jiliang+"',"+
"'"+txt3jihua+"',"+"'"+txt4shiji+"',"+
"'"+txt5starttime+"',"+"'"+txt6endtime+"',"+
"'"+txt7remindtime+"'");
}学习一下sqlparameter用法吧,拼接容易被注入
另外
学学分层吧,孩子~
学学EF吧,孩子~
tablename.ToString() 本身是string类型的就不要ToString()
有这个错误提示的。
调试下,看看。string str= "insert into " + tablename.ToString()
+ " values (" + insertstring.ToString() + ")";
label.Text=str;
将sda.InsertCommand.CommandText = "insert into " + tablename.ToString() + " values (" + insertstring.ToString() + ")";
//改为
sda.InsertCommand =new SqlCommand( "insert into " + tablename.ToString() + " values (" + insertstring.ToString() + ")");