public ServiciosPlataformasTecnologicasModel(List <XMLNodoEntity> lstNodos) : base(lstNodos) { try { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.ServiciosPlataformasTecnologicas); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.ServiciosPlataformasTecnologicas); ServiciosPlataformasTecnologicas = new ServiciosPlataformasTecnologicasEntity(nodo?.PlataformasTecnologicas); Retenciones = new RetencionesSPTEntity(lstNodos); ImpuestosRetenidos = new ImpuestosRetenidosEntity(lstNodos); Periodo = new PeriodoEntity(lstNodos); var DetallesDelServicio = nodo?.Servicios.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, "DetallesDelServicio")).ToList(); ServiciosDetalles = new List <DetallesServicioEntity>(); if (DetallesDelServicio?.Any() == true) { nodo?.lstServicios.AddRange(from XElement item in DetallesDelServicio select new DetalleServicioSPTModel( item, item.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, "ImpuestosTrasladadosdelServicio")).ToList(), item.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, "ContribucionGubernamental")).FirstOrDefault(), item.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, "ComisionDelServicio")).FirstOrDefault() )); ServiciosDetalles.AddRange(from DetalleServicioSPTModel item in nodo.lstServicios select new DetallesServicioEntity(item)); } } catch (System.Exception ex) { Error = ex; } }
public static List <XElement> Buscar(List <XElement> elemento, string LocalName) { if (elemento?.Elements().Any() == true) { return(elemento.Elements().Where(i => ValidarItemXML.Validar(i.Name.LocalName, LocalName)).ToList()); } return(new List <XElement>()); }
public VisualStudioEntity(XMLNodoEntity nodo) { AssemblyName = BuscarValueXML.Buscar(nodo?.PropertyGroup, "AssemblyName"); TargetFrameworkVersion = BuscarValueXML.Buscar(nodo?.PropertyGroup, "TargetFrameworkVersion"); PlatformTarget = BuscarValueXML.Buscar(nodo?.PropertyGroup, "PlatformTarget"); var item = BuscarElementosXML.Buscar(nodo?.ItemGroup, "ProjectReference"); Proyectos = new List <string>(); if (item?.Any() == true) { Proyectos.AddRange(from XElement x in item.Elements() where ValidarItemXML.Validar(x.Name.LocalName, "Name") select BuscarValueXML.Buscar(x, "Name", Sistema.Nivel.Raiz)); } TotalDependencias = Proyectos.Count; }
public VisualStudioModel(List <XMLNodoEntity> lstNodos) { try { Packages = new List <PackagesEntity>(); ValuesConfig = new List <ConfigEntity>(); if (ValidarTipoNodo.Existe(out XMLNodoEntity nodo, Sistema.Nodo.VisualStudio, lstNodos)) { VisualStudio = new VisualStudioEntity(nodo); XMLNodoEntity config; if (ValidarTipoNodo.Existe(out config, Sistema.Nodo.Config, lstNodos)) { var conexion = BuscarValueXML.Buscar(config?.connectionStrings, "connectionString", Sistema.Nivel.ElementroAtributo); if (config?.appSettings?.Elements()?.Any() == true) { ValuesConfig.AddRange(from XElement item in config.appSettings.Elements() where ValidarItemXML.Validar(item.Name.LocalName, "add") select new ConfigEntity(item, conexion)); } } XMLNodoEntity Pack; if (ValidarTipoNodo.Existe(out Pack, Sistema.Nodo.Nuget, lstNodos)) { var package = Pack?.Nugets?.Elements().Where(p => ValidarItemXML.Validar(p.Name.LocalName, "package")).ToList(); Packages.AddRange(from XElement pack in package select new PackagesEntity(pack)); } } } catch (Exception ex) { Error = ex; } }
public static List <XElement> ObtenerLista(XDocument xml, string Nodo) => xml?.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, Nodo)).ToList() ?? new List <XElement>();
public static XElement ObtenerEntity(XElement xml, string Nodo) => xml?.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, Nodo)).FirstOrDefault();