public static void Pais(ModelBuilder modelBuilder) { GeneradorMd.DefinirCamposDelElementoDtm <PaisDtm>(modelBuilder); modelBuilder.Entity <PaisDtm>().Property(v => v.Codigo) .HasColumnName("CODIGO") .HasColumnType("VARCHAR(3)") .IsRequired(true); modelBuilder.Entity <PaisDtm>().Property(v => v.NombreIngles) .HasColumnName("NOMBRE_INGLES") .HasColumnType("VARCHAR(250)") .IsRequired(true); modelBuilder.Entity <PaisDtm>().Property(v => v.ISO2) .HasColumnName("ISO2") .HasColumnType("VARCHAR(2)") .IsRequired(true); modelBuilder.Entity <PaisDtm>().Property(v => v.Prefijo) .HasColumnName("PREFIJO") .HasColumnType("VARCHAR(10)") .IsRequired(true); modelBuilder.Entity <PaisDtm>().HasAlternateKey(p => p.Codigo).HasName("AK_PAIS_CODIGO"); modelBuilder.Entity <PaisDtm>().HasAlternateKey(p => p.ISO2).HasName("AK_PAIS_ISO2"); modelBuilder.Entity <PaisDtm>().HasAlternateKey(p => p.NombreIngles).HasName("AK_PAIS_NAME"); }
internal static void DefinirCamposDeAuditoriaDtm <TEntity>(ModelBuilder modelBuilder) where TEntity : AuditoriaDtm { var nombreDeTabla = GeneradorMd.NombreDeTabla(typeof(TEntity)); modelBuilder.Entity <TEntity>().Property(p => p.IdElemento).HasColumnName("ID_ELEMENTO"); modelBuilder.Entity <TEntity>().Property(p => p.IdElemento).HasColumnType("INT"); modelBuilder.Entity <TEntity>().Property(p => p.IdElemento).IsRequired(true); modelBuilder.Entity <TEntity>().HasIndex(p => p.IdElemento).HasDatabaseName($"I_{nombreDeTabla}_ID_ELEMENTO"); modelBuilder.Entity <TEntity>().Property(p => p.IdUsuario).HasColumnName("ID_USUARIO"); modelBuilder.Entity <TEntity>().Property(p => p.IdUsuario).HasColumnType("INT"); modelBuilder.Entity <TEntity>().Property(p => p.IdUsuario).IsRequired(true); modelBuilder.Entity <TEntity>().HasIndex(p => p.IdUsuario).HasDatabaseName($"I_{nombreDeTabla}_ID_USUARIO"); modelBuilder.Entity <TEntity>().Property(p => p.Operacion).HasColumnName("OPERACION"); modelBuilder.Entity <TEntity>().Property(p => p.Operacion).HasColumnType("CHAR(1)"); modelBuilder.Entity <TEntity>().Property(p => p.Operacion).IsRequired(true); modelBuilder.Entity <TEntity>().Property(p => p.registroJson).HasColumnName("REGISTRO"); modelBuilder.Entity <TEntity>().Property(p => p.registroJson).HasColumnType("VARCHAR(MAX)"); modelBuilder.Entity <TEntity>().Property(p => p.registroJson).IsRequired(true); modelBuilder.Entity <TEntity>().Property(p => p.AuditadoEl).HasColumnName("AUDITADO_EL"); modelBuilder.Entity <TEntity>().Property(p => p.AuditadoEl).HasColumnType("DATETIME2(7)"); modelBuilder.Entity <TEntity>().Property(p => p.AuditadoEl).IsRequired(true); }
public static void Municipio(ModelBuilder modelBuilder) { GeneradorMd.DefinirCamposDelElementoDtm <MunicipioDtm>(modelBuilder); modelBuilder.Entity <MunicipioDtm>().Property(v => v.Codigo) .HasColumnName("CODIGO") .HasColumnType("VARCHAR(3)") .IsRequired(true); modelBuilder.Entity <MunicipioDtm>().Property(v => v.DC) .HasColumnName("DC") .HasColumnType("VARCHAR(1)") .IsRequired(true); modelBuilder.Entity <MunicipioDtm>().Property(v => v.IdProvincia) .HasColumnName("ID_PROVINCIA") .HasColumnType("INT") .IsRequired(true); modelBuilder.Entity <MunicipioDtm>().HasAlternateKey(p => new { p.IdProvincia, p.Codigo }).HasName("AK_MUNICIPIO_ID_PROVINCIA_CODIGO"); modelBuilder.Entity <MunicipioDtm>() .HasIndex(p => p.IdProvincia) .HasDatabaseName($"I_MUNICIPIO_ID_PROVINCIA"); modelBuilder.Entity <MunicipioDtm>() .HasOne(p => p.Provincia) .WithMany() .HasForeignKey(p => p.IdProvincia) .HasConstraintName($"FK_MUNICIPIO_ID_PROVINCIA") .OnDelete(DeleteBehavior.Restrict); modelBuilder.Entity <MunicipioDtm>().Ignore(x => x.Expresion); }
public AuditoriaDeElementos(ContextoSe contexto, enumNegocio negocio) { Dtm = negocio.TipoDtm(); Dto = negocio.TipoDto(); tablaDeAuditoria = $"{GeneradorMd.NombreDeTabla(Dtm)}_AUDITORIA"; esquemaDeAuditoria = GeneradorMd.EsquemaDeTabla(Dtm); Contexto = contexto; }
public static void TipoDeVia(ModelBuilder modelBuilder) { GeneradorMd.DefinirCamposDelRegistroConNombreDtm <TipoDeViaDtm>(modelBuilder); modelBuilder.Entity <TipoDeViaDtm>().Property(v => v.Sigla) .HasColumnName("SIGLA") .HasColumnType("VARCHAR(4)") .IsRequired(true); modelBuilder.Entity <TipoDeViaDtm>().HasAlternateKey(p => p.Sigla).HasName("AK_TIPO_VIA_SIGLA"); }
public static void RegistrarAuditoria(ContextoSe contexto, enumNegocio negocio, enumTipoOperacion operacion, IElementoDtm auditar) { auditar.UsuarioModificador = auditar.UsuarioCreador = null; var valor = serializarPropiedadesPOCO(auditar); var sentencia = $@"Insert into {GeneradorMd.EsquemaDeTabla(negocio.TipoDtm())}.{GeneradorMd.NombreDeTabla(negocio.TipoDtm())}_AUDITORIA (id_elemento, id_usuario, operacion, registro, auditado_el) values ({((ElementoDtm)auditar).Id} ,{contexto.DatosDeConexion.IdUsuario} ,'{operacion.ToBd()}' ,'{valor}' ,'{DateTime.Now}')"; contexto.Database.ExecuteSqlRaw(sentencia); }
public static void Calle(ModelBuilder modelBuilder) { GeneradorMd.DefinirCamposDelElementoDtm <CalleDtm>(modelBuilder); modelBuilder.Entity <CalleDtm>().Property(v => v.Codigo) .HasColumnName("CODIGO") .HasColumnType("VARCHAR(10)") .IsRequired(true); modelBuilder.Entity <CalleDtm>().Property(v => v.IdMunicipio) .HasColumnName("ID_MUNICIPIO") .HasColumnType("INT") .IsRequired(true); modelBuilder.Entity <CalleDtm>().Property(v => v.IdTipoVia) .HasColumnName("ID_TIPO_DE_VIA") .HasColumnType("INT") .IsRequired(true); modelBuilder.Entity <CalleDtm>().HasAlternateKey(p => new { p.IdMunicipio, p.Codigo }).HasName("AK_CALLE_ID_MUNICIPIO_CODIGO"); modelBuilder.Entity <CalleDtm>() .HasIndex(p => p.IdMunicipio) .HasDatabaseName($"I_CALLE_ID_MUNICIPIO"); modelBuilder.Entity <CalleDtm>() .HasOne(p => p.Municipio) .WithMany() .HasForeignKey(p => p.IdMunicipio) .HasConstraintName($"FK_CALLE_ID_MUNICIPIO") .OnDelete(DeleteBehavior.Restrict); modelBuilder.Entity <CalleDtm>() .HasOne(p => p.TipoDeVia) .WithMany() .HasForeignKey(p => p.IdTipoVia) .HasConstraintName($"FK_CALLE_ID_TIPO_DE_VIA") .OnDelete(DeleteBehavior.Restrict); modelBuilder.Entity <CalleDtm>().Property(v => v.Expresion).HasColumnName("EXPRESION").HasColumnType("VARCHAR(MAX)").HasComputedColumnSql("CALLEJERO.CC_CALLE_EXPRESION(NOMBRE, ID_MUNICIPIO, ID_TIPO_DE_VIA)"); }
public static void Provincia(ModelBuilder modelBuilder) { GeneradorMd.DefinirCamposDelElementoDtm <ProvinciaDtm>(modelBuilder); modelBuilder.Entity <ProvinciaDtm>().Property(v => v.Codigo) .HasColumnName("CODIGO") .HasColumnType("VARCHAR(2)") .IsRequired(true); modelBuilder.Entity <ProvinciaDtm>().Property(v => v.Sigla) .HasColumnName("SIGLA") .HasColumnType("VARCHAR(3)") .IsRequired(true); modelBuilder.Entity <ProvinciaDtm>().Property(v => v.IdPais) .HasColumnName("ID_PAIS") .HasColumnType("INT") .IsRequired(true); modelBuilder.Entity <ProvinciaDtm>().Property(v => v.Prefijo) .HasColumnName("PREFIJO") .HasColumnType("VARCHAR(10)") .IsRequired(true); modelBuilder.Entity <ProvinciaDtm>().HasAlternateKey(p => p.Codigo).HasName("AK_PROVINCIA_CODIGO"); modelBuilder.Entity <ProvinciaDtm>().HasAlternateKey(p => p.Sigla).HasName("AK_PROVINCIA_SIGLA"); modelBuilder.Entity <ProvinciaDtm>() .HasIndex(p => p.IdPais) .HasDatabaseName($"I_PROVINCIA_ID_PAIS"); modelBuilder.Entity <ProvinciaDtm>() .HasOne(p => p.Pais) .WithMany() .HasForeignKey(p => p.IdPais) .HasConstraintName($"FK_PROVINCIA_ID_PAIS") .OnDelete(DeleteBehavior.Restrict); modelBuilder.Entity <ProvinciaDtm>().Ignore(x => x.Expresion); }
public static void Definir(ModelBuilder modelBuilder) { modelBuilder.Entity <UsuarioDtm>().Property(p => p.Nombre).HasColumnName("NOMBRE").HasColumnType("VARCHAR(50)").IsRequired(); modelBuilder.Entity <UsuarioDtm>().Property(p => p.eMail).HasColumnName("EMAIL").HasColumnType("VARCHAR(50)").IsRequired().HasDefaultValue("*****@*****.**"); modelBuilder.Entity <UsuarioDtm>().Property(p => p.EsAdministrador).IsRequired(true).HasDefaultValue(false); modelBuilder.Entity <UsuarioDtm>() .HasIndex(v => new { v.Login }) .IsUnique(true) .HasDatabaseName("IX_USUARIO"); modelBuilder.Entity <UsuarioDtm>() .HasMany(tu => tu.Puestos) .WithOne(p => p.Usuario) .HasForeignKey(p => p.IdUsuario); modelBuilder.Entity <UsuarioDtm>() .HasMany(tu => tu.Permisos) .WithOne(p => p.Usuario) .HasForeignKey(p => p.IdUsuario); GeneradorMd.DefinirCampoArchivo <UsuarioDtm>(modelBuilder); }
public static void Definir(ModelBuilder modelBuilder) { GeneradorMd.DefinirCamposDelElementoDtm <ArchivoDtm>(modelBuilder); }