zoukankan      html  css  js  c++  java
  • dhl: Linq to Entity 数据访问对象DataContext不能用静态的。和数据库数据不同步。

    Linq to Entity  数据访问对象DataContext  和SqlHelper还是不一样。 SqlHelper 的静态方法中每次都是

    using (SqlConnection conn = new SqlConnection(connectionString)) 实例。

    DAL层:

    Code

    原来代码:DAL.UserShopDAL 数据操作为静态的。也就是DataContext是静态的,这样的话,Linq更新数据后,再读出数据的时候就还是旧数据。

    因为DataContext里面有数据,就不再和数据库连接。注意Linq这时在查DataContext里面的数据。

    Code

    原因:DataContext为静态,第二次查的时候由于没有new所以里面含有第一次的数据,查询出来就还是原来的数据。

    解决方案:

    每次查询时候new就可以。

    1.可以在BLL的每个方法中new  UserInfoDAL(); 

    2. 添加工厂类CreateDALFactory 来集中管理:

    Code

    BLL的方法中改为:

    Code
  • 相关阅读:
    python学习(八) 异常
    python学习(七) 更加抽象
    java面试(五)
    python学习(六) 抽象
    python学习(五) 条件、循环和其他语句
    JAVA基础知识——IO
    Java进阶之路——从初级程序员到架构师,从小工到专家(转载)
    如何成为java架构师(转载)
    python学习(四) 字典:当索引不好用时
    MVC Html.DropDownList 和DropDownListFor 的常用方法
  • 原文地址:https://www.cnblogs.com/dudu837/p/1456950.html
Copyright © 2011-2022 走看看