关于sqldataadapter:这个是asp.net2.0(C#)的bug吗?还请大侠赐教

来源:百度知道 编辑:UC知道 时间:2024/09/22 03:33:53
string sConnectionString = ConfigurationManager.ConnectionStrings["phonebook"].ToString();
SqlConnection sqlconn = new SqlConnection(sConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = sqlconn;
cmd.CommandText = "PRO_GETDEPARTNAME";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Clear();
SqlParameter paraCompanyName = cmd.Parameters.Add("@companyname", SqlDbType.NChar);
paraCompanyName.Direction = ParameterDirection.Input;
paraCompanyName.Value = sCompanyName;
sqlconn.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds, "departTable");
return ds;
以上代码能正确运行.但修改成如下形式就出问题了:
str

呵呵, 错误提示已经很清楚了告诉你了, 提示存储过程中参数没有被赋值。
你可以想一想, 在你用的第二个方法时。
SqlDataAdapter da = new SqlDataAdapter(cmd.commandtext,sConnectionString);
第一个参数是String第二个也是String,那么你之前的SqlCommand对象这里就没有被用到! 这并不是一个什么BUG、