C# DataTable已分配给其他数据集错误

C# DataTable已分配给其他数据集错误,c#,dataset,C#,Dataset,如何避免错误“DataTable已分配给其他数据集”,因为方法“RetronarReporteerRoresboleta”正在将DataTable添加到数据集中,然后,当方法“RetronarBoletAsporasa”获取DataTable并尝试插入新数据集中时,会发生此错误。那么我该如何解决这个问题呢 public DataTable RetornarReporteErroresBoleta(SqlString idBoleta) { DataTable tablaErrores =

如何避免错误“DataTable已分配给其他数据集”,因为方法“RetronarReporteerRoresboleta”正在将DataTable添加到数据集中,然后,当方法“RetronarBoletAsporasa”获取DataTable并尝试插入新数据集中时,会发生此错误。那么我该如何解决这个问题呢

public DataTable RetornarReporteErroresBoleta(SqlString idBoleta)
{
    DataTable tablaErrores = new DataTable();
    string procedimiento = "paBltMarcarErroresBoleta";

    try
    {
        Database accesoBd = this.gBaseDatosCnx.GenerarAccesoBaseDatosSgapa();
        object[] parametros = { idBoleta.Value };

        DataSet dsResultado = accesoBd.ExecuteDataSet(procedimiento, parametros);
        int cantidadFilas = dsResultado.Tables[0].Rows.Count;

        tablaErrores = dsResultado.Tables[0];
    }
    catch (Exception exc)
    {
        string mensaje = "Mensaje: " + exc.Message + "\n";
        mensaje += "Origen: " + exc.Source + "\n";
        mensaje += "Pila: " + exc.StackTrace;

        try
        {
            clsCorreoCom correo = new clsCorreoCom();
            string titulo = "Problema en: " + procedimiento;
            correo.enviarCorreo(titulo, mensaje, clsCorreoCom.MENSAJE_ERROR);
        }
        catch (Exception) { }
    }

    return tablaErrores;
}


public DataSet RetornarBoletasPorASA(SqlString idASA)
{
    DataSet erroresBoleta = new DataSet();
    string procedimiento = "paBltBuscarBoletasASA";

    try
    {          
        Database accesoBd = this.gBaseDatosCnx.GenerarAccesoBaseDatosSgapa();
        object[] parametros = { idASA.Value };

        DataSet dsResultado = accesoBd.ExecuteDataSet(procedimiento, parametros);
        int cantidadFilas = dsResultado.Tables[0].Rows.Count;
        foreach (DataRow fila in dsResultado.Tables[0].Rows) 
        {
            string idBoleta = fila[1].ToString();

            DataTable tablaErrores = RetornarReporteErroresBoleta(idBoleta);

            erroresBoleta.Tables.Add(tablaErrores);
        }
    }
    catch (Exception exc)
    {
        string mensaje = "Mensaje: " + exc.Message + "\n";
        mensaje += "Origen: " + exc.Source + "\n";
        mensaje += "Pila: " + exc.StackTrace;

        try
        {
            clsCorreoCom correo = new clsCorreoCom();
            string titulo = "Problema en: " + procedimiento;
            correo.enviarCorreo(titulo, mensaje, clsCorreoCom.MENSAJE_ERROR);
        }
        catch (Exception) { }
    }

    return erroresBoleta;
}

不能向多个
数据集添加
数据表
。请尝试以下方法:

erroresBoleta.Tables.Add(tablaErrores.Copy());

不能向多个
数据集添加
数据表
。请尝试以下方法:

erroresBoleta.Tables.Add(tablaErrores.Copy());