Использование документа XML в качестве источника данных для таблицы данных - PullRequest
0 голосов
/ 17 марта 2020

У меня есть программа, которая получает данные из базы данных и использует эту информацию для создания документа XML. Программа работает так, как задумано, но есть проблемы, когда она используется в ночное время, так как база данных обычно находится на обслуживании, поэтому программа перестает работать так, как задумано.

То, чего я хочу достичь, - это когда программа не может подключиться к базе данных, чтобы использовать документ XML (созданный с теми же данными, что и база данных), поэтому программа может работать правильно во время периодов обслуживания, в основном, используя документ XML для создания другого XML

Вот как программа подключена к базе данных:

namespace Cotas.Class
{
    public class CData
    {
        static string S_Connection = "ConnectionString";

        public static BDMINIAPPS.SP_MINIAPPS SPMINIAPPS = new BDMINIAPPS.SP_MINIAPPS(S_Connection);
        public static BDMINIAPPS.D_CGeometricas CCGeometricos = new BDMINIAPPS.D_CGeometricas(S_Connection);
        public static BDMINIAPPS.D_CGParametros CCGParametros = new BDMINIAPPS.D_CGParametros(S_Connection);
    }
}

Метод

private void LoadConfiguration()
        {
            DataTable DTCGeometricas = CData.SPMINIAPPS.SP_GetCGeometricas();

            D_Tolerancia = decimal.Parse(CData.CCGParametros.SelectCGParametros("Tolerancia").Parametro);
            S_Descripcion = CData.CCGParametros.SelectCGParametros("Descripcion").Parametro;
            S_Encoding = CData.CCGParametros.SelectCGParametros("Encoding").Parametro;
            S_PathOrigen = CData.CCGParametros.SelectCGParametros("PathOrigen").Parametro;
            S_PathDestino = CData.CCGParametros.SelectCGParametros("PathDestino").Parametro;
            S_PathProcesados = CData.CCGParametros.SelectCGParametros("PathProcesados").Parametro;
            S_PathErrores = CData.CCGParametros.SelectCGParametros("PathErrores").Parametro;
            S_ArchivoLOGs = CData.CCGParametros.SelectCGParametros("ArchivoLOGs").Parametro;
            S_Operacion = CData.CCGParametros.SelectCGParametros("Operacion").Parametro;

            foreach (DataRow DRCGeometrica in DTCGeometricas.Rows)
                L_CGeometricas.Add(DRCGeometrica["CGeometrica"].ToString());
        }

И эту команду я использовал для экспорта данных из База данных для XML документа

SELECT ( SELECT * From CGeometricas
FOR
XML PATH('Row'), ROOT('CGeometricas'),
TYPE),
(SELECT * From CGParametros
FOR
XML PATH('Row'), ROOT('CGParametros'),
TYPE)
FOR XML PATH('') ,
ROOT('Root')
...