none
Linq 怎么并发操作???不冲突???用多线程插入数据 老报错 RRS feed

  • 问题

  • =======================================
    2011-07-28 11:26:46System.InvalidOperationException: 在调用 SubmitChanges 期间不能执行此操作。
       在 System.Data.Linq.DataContext.CheckNotInSubmitChanges()
       在 System.Data.Linq.Table`1.InsertOnSubmit(TEntity entity)
       在 FindTextDemo.MainForm.ExcelToDB(String strFile) 位置 E:\FindTextDemo\FindTextDemo\MainForm.cs:行号 591E:\财务数据\系统项目收款表\九州文化\崔健.xls
    =======================================

    用多线程插入数据 老报错

     


    I like I DO 微软技术的忠实拥护者大麦 MSN: hesoft@hotmail.com ~~
    2011年7月28日 3:45

答案

全部回复

  • linq事务和并发冲突处理

    参照下这里http://kb.cnblogs.com/a/1637230/


    http://blog.csdn.net/zx13525079024
    2011年7月28日 5:09
  • 有没有简单点的
    I like I DO 微软技术的忠实拥护者大麦 MSN: hesoft@hotmail.com ~~
    2011年7月28日 7:33
  • dear

    1.技术是要深入研究才能了解问题所在,只要耐下性子看没啥难得倒你

    2.会不会是执行绪同步的问题,试试看执行绪锁定lock

    http://www.dotblogs.com.tw/yc421206/archive/2011/01/07/20624.aspx


    秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/
    • 已建议为答案 Lie You 2011年8月3日 5:31
    2011年7月28日 13:38
  • 这个问题很多情况都是您开了一个 ObjectContext 然后在多个线程里面去 SubmitChanges,我的建议是对于不同的线程,创建不同的 ObjectContext 给他单独用。SubmitChanges 是一个类似于 Commit 效果的操作,您想想,Commit 的时候怎么会允许同一个 Context 上的 CRUD 操作呢?
    Mark Zhou
    2011年7月29日 10:01
  • 有没有简单点的
    I like I DO 微软技术的忠实拥护者大麦 MSN: hesoft@hotmail.com ~~
          问题首先就不是个简单的问题  不能简单一两句话就能解决的了的  貌似我在CSDN已经回复过你的这个帖子了


    Best Regards,
    If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".
    2011年8月1日 0:38