日期:2014-05-18  浏览次数:20502 次

DataBinding:“System.Data.DataRowView”不包含名为“phoneID ”的属性。
string str = "SELECT phoneID, phone_name, indroduce, price, newgoods, supperlier, CASE newgoods WHEN '1' THEN '是' ELSE '否' END AS newgoods FROM phone" + Session["sqls"] ;
   
  SqlDataAdapter sd = new SqlDataAdapter(str, strcon);
  DataSet ds = new DataSet();
  sd.Fill(ds,"phone");
  this.GridView1.DataSource = ds.Tables["phone"];
  this.GridView1.DataKeyNames = new string[] { "phoneID " };
  GridView1.DataBind();
错误为

DataBinding:“System.Data.DataRowView”不包含名为“phoneID ”的属性。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.Web.HttpException: DataBinding:“System.Data.DataRowView”不包含名为“phoneID ”的属性。

明明数据库的phone表的主键就为phoneID

帮帮忙看看这是哪里错了,弄了好久了。

------解决方案--------------------
phoneID后有一个空格,去掉它试试吧~