日期:2014-05-20  浏览次数:20961 次

DataContext 的问题请教
我定义了一个数据类.根据id返回对象bbei 
C# code
 
class dal
{
  private dcDataContext dc;
        public dal()
        { dc = new dcDataContext(); }


        public bbei tbid(long tbid)//输入id返回bbei对象
        {
            return dc.bbei.Where(q => q.tbid == tbid).First();
        }
}

然后我调用时
C# code

class BLL 
    {
 private bbei bb;
        private dcDataContext dc;
public BLL()
        { bb = new bbei(); dc = new dcDataContext(); }


 public bool upda(long id)
        {
   bb = dal.tbid(id); //根据id返回对象
bb.name="张三";  //修改name为张三
dc.SubmitChanges(); //同步到数据库



这样编译时没有错.执行时也没有报错.
但数据就没有更新.

项目里我简单测试linq和数据库没有问题.但写成这样就不更新了.
怎么回事呢.要怎么写才对.谢谢大虾


------解决方案--------------------
应该 是 不同的dcDataContext 造成的, 用同一个,否则跟踪不到状态。
------解决方案--------------------
http://riches.iteye.com/blog/207394
------解决方案--------------------
探讨
应该 是 不同的dcDataContext 造成的, 用同一个,否则跟踪不到状态。

------解决方案--------------------
用单例模式 是个不错的选择