Entity framework 已存在与此连接关联的openEntityframework DataReader,必须先关闭该连接

Entity framework 已存在与此连接关联的openEntityframework DataReader,必须先关闭该连接,entity-framework,entity-framework-6,Entity Framework,Entity Framework 6,我在numMedidas=numMedidas+anal.Medidas.Count()上得到了这个错误我想不出如何解决它: InnerException:{“已经有一个与此连接关联的打开的DataReader,必须先关闭它。”} 资料来源:EntityFramework 代码如下: PiteloDataContext contexto = new PiteloDataContext(); var resultados = from analisis in contex

我在numMedidas=numMedidas+anal.Medidas.Count()上得到了这个错误我想不出如何解决它: InnerException:{“已经有一个与此连接关联的打开的DataReader,必须先关闭它。”} 资料来源:EntityFramework

代码如下:

     PiteloDataContext contexto = new PiteloDataContext();
        var resultados = from analisis in contexto.Analises
                         select analisis;

        if (Hospitales != null)
        {
            List<string> listaHospitales = new List<string>();
            listaHospitales = Hospitales.ToString().Split(';').ToList();
            resultados = resultados.Where(b => listaHospitales.Contains(b.Incidente.Hospital.Denominacion));               

        }

NumAnalisisASPxLabel.Text = resultados.Count().ToString();

        foreach (Pitelo.EntityClasses.Analisis anal in resultados )
        {
            **numMedidas = numMedidas + anal.Medidas.Count();**
            if ((anal.FechaHora != null) && (anal.Incidente.FechaHora != null))
            {
                sumaSegundosEntreComunicacionAnalisis = sumaSegundosEntreComunicacionAnalisis + (Convert.ToDateTime(anal.FechaHora) - Convert.ToDateTime(anal.Incidente.FechaHora));
                numElementosTomarEnCuenta++;
            }
            if ((anal.FechaHora != null) && (anal.Incidente.FechaHoraCierre!=null))
            {
                sumaSegundosEntreComunicacionAnalisisCierre = sumaSegundosEntreComunicacionAnalisisCierre + (Convert.ToDateTime(anal.Incidente.FechaHoraCierre) - Convert.ToDateTime(anal.FechaHora));
                numElementosTomarEnCuenta2++;
            }
        }
PiteloDataContext contexto=new PiteloDataContext();
var resultados=来自上下文分析中的分析
选择分析;
如果(输入值!=null)
{
List listaHospitales=新列表();
listaHospitales=Hospitales.ToString().Split(“;”).ToList();
resultados=resultados.Where(b=>listaHospitales.Contains(b.incident.Hospital.Denominacion));
}
NumAnalisisASPxLabel.Text=resultados.Count().ToString();
foreach(Pitelo.EntityClass.Analisis-anal-in-resultados)
{
**numMedidas=numMedidas+anal.Medidas.Count()**
if((anal.FechaHora!=null)&&(anal.incident.FechaHora!=null))
{
SumaseGundosentercomunicaconalis=SumaseGundosentercomunicaconalis+(Convert.ToDateTime(anal.FechaHora)-Convert.ToDateTime(anal.incident.FechaHora));
Numelementosomancercenta++;
}
if((anal.FechaHora!=null)&&(anal.incident.FechaHoraCierre!=null))
{
SumaseGundosentercomunicationanaliscierre=SumaseGundosentercomunicationanaliscierre+(Convert.ToDateTime(anal.incident.fechahoraciere)-Convert.ToDateTime(anal.FechaHora));
Numelementostomarencounta2++;
}
}
有什么建议吗


谢谢

尝试将结果集转换为ToList()
foreach(resultados.ToList()中的Pitelo.entityclass.Analisis anal){…}
Eric。谢谢它解决了它