找回密码
 立即注册

QQ登录

只需一步,快速开始

y418412444
论坛元老   /  发表于:2015-10-19 19:30  /   查看:6610  /  回复:6
问题:每次调用updatecommand事件往数据库中存数据,保存的都不是当前表单中完整的数据,根据观察,应该是当前最后一次操作的行数据没有被保存进去,之前编辑的表格数据都能保存,请问这是BUG吗还是我的代码有问题?
代码如下:
protected void FpSpread1_UpdateCommand(object sender, FarPoint.Web.Spread.SpreadCommandEventArgs e)
    {
        string conn = ConfigurationManager.AppSettings["ConnectionString"].ToString();
            SqlConnection mycon = new SqlConnection(conn);
            mycon.Open();
        string sqlstr;
        for (int i = 9; i < this.FpSpread1.Sheets[0].RowCount; i++) //从第10行开始
        {
            sqlstr = “这里有一串sql语句”;
            SqlCommand com = new SqlCommand(sqlstr, mycon);
            com.ExecuteNonQuery();
        }
    }

6 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2015-10-20 11:37:00
沙发
回复 1楼y418412444的帖子

可以在执行之前尝试使用以下代码保存spread设置:

  1. protected void FpSpread1_UpdateCommand(object sender, FarPoint.Web.Spread.SpreadCommandEventArgs e)
  2.     {
  3.    this.FpSpread1.SaveChanges();
  4.         string conn = ConfigurationManager.AppSettings["ConnectionString"].ToString();
  5.             SqlConnection mycon = new SqlConnection(conn);
  6.             mycon.Open();
  7.         string sqlstr;
  8.         for (int i = 9; i < this.FpSpread1.Sheets[0].RowCount; i++) //从第10行开始
  9.         {
  10.             sqlstr = “这里有一串sql语句”;
  11.             SqlCommand com = new SqlCommand(sqlstr, mycon);
  12.             com.ExecuteNonQuery();
  13.         }
  14.     }
复制代码
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-10-20 11:38:00
板凳
回复 1楼y418412444的帖子

另外,获取编辑过的dirty数据请参考:
http://blog.gcpowertools.com.cn/ ... et_usecommands.aspx
回复 使用道具 举报
y418412444
论坛元老   /  发表于:2015-10-21 21:31:00
地板
回复 2楼iceman的帖子

还是不对,最后编辑的行的数据还是保存不到
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-10-22 11:52:00
5#
回复 4楼y418412444的帖子

通过附件demo测试,编辑单元格都能获取到值,请参考:
19056.zip (7.64 KB, 下载次数: 362)
回复 使用道具 举报
y418412444
论坛元老   /  发表于:2015-10-22 14:13:00
6#
回复 5楼iceman的帖子

最后用了一个button,里面用您上面的代码最后实现了。谢谢!
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-10-22 16:41:00
7#
回复 6楼y418412444的帖子

好的,不客气,问题解决就好。

为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见。
您可以关注我们的微信服务号(微信号:GrapeCityDT),帖子有回复时可即时收到提醒,便于您第一时间查看,尽快解决技术问题。关注即可获得300金币用于兑换礼品。谢谢

评分

参与人数 1满意度 +5 收起 理由
y418412444 + 5 谢谢,问题解决

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部