在ViewState["table"]并没有关鍵字段,是否要循环table更新到数据库,如果这样的话,请问代码要如何写呢,真的不知道如何弄了,网上也查了很多时间,没有头绪,谢谢大家。

解决方案 »

  1.   

    我的意思是说ViewState["table"]里是我经过修改后的结果,我如何再用这个ViewState["table"]更新到数据库,当然里面也有IDentity列
      

  2.   

    你的ViewState["table"]是DataTable类型吗?
    利用Sql语句的update啊
    可以循环一条条update
      

  3.   

    if(ds.HasChanges())
    {
    foreach(DataRow dr in ds.Tables[0].Rows)
    {
    SqlHelper.UpdateDataSet(ds,"SELECT * FROM tableName");
    }
    }
    --------------------------------------------------
    /// <summary>
    /// 更新DataSet
    /// </summary>
    /// <param name="ds">DataSet</param>
    /// <param name="selSql">select 字符串</param>
    public static void UpdateDataSet(DataSet ds,string selSql)
    {
    using(SqlConnection cnn=new SqlConnection(cnnstring))
    {
    SqlDataAdapter da=new SqlDataAdapter();
    da.SelectCommand=new SqlCommand(selSql,cnn);
    SqlCommandBuilder cb=new SqlCommandBuilder(da);
    da.InsertCommand=cb.GetInsertCommand();
    da.UpdateCommand=cb.GetUpdateCommand();
    da.DeleteCommand=cb.GetDeleteCommand();
    da.Update(ds);
    }
    }
      

  4.   

    是DataTable类型的,请问如何用Sql语句Update,一条条循环的update,我想用CommandBuilder自动生成,说是加table.primarykey,试了好久都不行。能否贴点代码啊,谢谢了
      

  5.   

    请问楼上sqlhelper在哪个命名空间啊,另外应把ViewState["table"]要存到ds中吧,请问如何存啊,谢谢大家