GridView数据显示问题
这是我后台绑定数据的代码:
SqlConnection myConn = DBClass.GetConnection();
myConn.Open();
SqlCommand cmd = new SqlCommand("GetOrdersInfo", myConn);
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter userIP = new SqlParameter("@会员编号", SqlDbType.VarChar, 10);
userIP.Value = Convert.ToString(Request.UserHostAddress);
cmd.Parameters.Add(userIP);
cmd.ExecuteNonQuery();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
GridView1.DataSource = ds.Tables[0].DefaultView;
GridView1.DataBind();
cmd.Dispose();
myConn.Close();
这个是我的储存过程:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER proc [dbo].[GetOrdersInfo]
(
@会员编号 varchar(10)
)
as
select 产品名称,产品价格,数量
from 购物车表 O ,产品表 T
where O.产品编号=T.产品编号 and 会员编号=@会员编号
运行时没有错误··但是GridView是空的(表头也没有)。
如果不用储存过程的代码:
string name1 = Session["name"].ToString();
SqlConnection con = new SqlConnection();
con.ConnectionString = "Data Source=.;Initial Catalog=泡面数据库;Integrated Security=SSPI;";
con.Open();
string sql = string.Format("select * from view_3 where 会员编号 ='{0}'", name1);
SqlCommand cmd = new SqlCommand(sql, con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
GridView1.DataSource = ds.Tables[0].DefaultView;
GridView1.DataBind();
con.Close();
这段可以显示GridView1·但是删除时会提示无法修改视图··修改更新时会提示无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.TextBox”。
好悲剧,求大大们救救我······
------解决方案--------------------
你前台绑定没问题吗?主键绑定没?各列的字段写对了没有等等,细节的地方好好检查一下吧。
------解决方案--------------------
看不出来,现在都不用服务器控件了
建议大家都不用,写html和js多好,一切都由自己掌控绝不会出问题,服务器控件谁知道它干了些啥