2012年12月

异常内容:There is already an open DataReader associated with this Connection which must be closed first.
诱因:形如

public class xxoo
{
    TestEntities db = new TestEntities();
    public void fun()
    {
       db......//反正就是数据库操作
     }
}

 这样的代码,用了一个全局的实体类操作数据库。
解决方案:
每次数据库操作都用一个自己的实体类。

P.S:Google说在mssql2005+后的版本,可以在web.config的connectionstring里设定MultipleActiveResultSets=true,这样就可以用一个全局实体来操作,但是经过血泪实验证明,mysql加了这个属性以后直接连不上数据库,查手册后知道mysql不支持这种连接方式。