Created
September 6, 2017 21:54
-
-
Save anonymous/b2f27e75c8e7b654a3d44bf09f82b00e to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Classe Vendedor: | |
``` | |
public partial class Vendedor | |
{ | |
public long IdVendedor { get; set; } | |
public string Nome { get; set; } | |
public string CpfCnpj { get; set; } | |
public string RgIe { get; set; } | |
public string NomeRazao { get; set; } | |
public string Url { get; set; } | |
public string Obs { get; set; } | |
public DateTime Inclusao { get; set; } | |
public long IdUsuarioInc { get; set; } | |
public DateTime? Alteracao { get; set; } | |
public long? IdUsuarioAlt { get; set; } | |
public Usuario IdUsuarioIncNavigation { get; set; } | |
} | |
``` | |
Entidade Vendedor: | |
``` | |
CREATE TABLE [dbo].[Vendedor] ( | |
[IdVendedor] BIGINT IDENTITY (1, 1) NOT NULL, | |
[Nome] NVARCHAR (250) NOT NULL, | |
[CpfCnpj] NVARCHAR (15) NOT NULL, | |
[RgIe] NVARCHAR (30) NULL, | |
[NomeRazao] NVARCHAR (250) NOT NULL, | |
[Url] NVARCHAR (250) NULL, | |
[Obs] NVARCHAR (250) NULL, | |
[Inclusao] DATETIME NOT NULL, | |
[Alteracao] DATETIME NULL, | |
CONSTRAINT [PK_Vendedor] PRIMARY KEY CLUSTERED ([IdVendedor] ASC) | |
CONSTRAINT [FK_Vendedor_Usuario] FOREIGN KEY ([IdUsuarioInc]) REFERENCES [dbo].[Usuario] ([IdUsuario]) | |
); | |
``` | |
Classe TipoVendedor: | |
``` | |
public partial class TipoVendedor | |
{ | |
public long IdTipoVendedor { get; set; } | |
public string Nome { get; set; } | |
public string Descricao { get; set; } | |
} | |
``` | |
Entidade TipoVendedor: | |
``` | |
CREATE TABLE [dbo].[TipoVendedor] ( | |
[IdTipoVendedor] BIGINT IDENTITY (1, 1) NOT NULL, | |
[Nome] VARCHAR (50) NOT NULL, | |
[Descricao] VARCHAR (250) NOT NULL, | |
CONSTRAINT [PK_TipoVendedor] PRIMARY KEY CLUSTERED ([IdTipoVendedor] ASC) | |
); | |
``` | |
Classe VendedorTipo: | |
``` | |
public partial class VendedorTipo | |
{ | |
public long IdVendedor { get; set; } | |
public long IdTipoVendedor { get; set; } | |
public long IdUsuarioInclusao { get; set; } | |
public DateTime Inclusao { get; set; } | |
public long? IdUsuarioInativo { get; set; } | |
public DateTime? Inativo { get; set; } | |
} | |
``` | |
Entidade VendedorTipo: | |
``` | |
CREATE TABLE [dbo].[VendedorTipo] ( | |
[IdVendedor] BIGINT NOT NULL, | |
[IdTipoVendedor] BIGINT NOT NULL, | |
[IdUsuarioInclusao] BIGINT NOT NULL, | |
[Inclusao] DATETIME NOT NULL, | |
[IdUsuarioInativo] BIGINT NULL, | |
[Inativo] DATETIME NULL, | |
CONSTRAINT [PK_VendedorTipo_TipoVendedor] PRIMARY KEY CLUSTERED ([IdVendedor] ASC, [IdTipoVendedor] ASC) | |
); | |
``` | |
Contexto gerado do DbContext: | |
``` | |
public virtual DbSet<Vendedor> Vendedor { get; set; } | |
public virtual DbSet<TipoVendedor> TipoVendedor { get; set; } | |
public virtual DbSet<VendedorTipo> VendedorTipo { get; set; } | |
protected override void OnModelCreating(ModelBuilder modelBuilder) | |
{ | |
modelBuilder.Entity<Vendedor>(entity => | |
{ | |
entity.HasKey(e => e.IdVendedor); | |
entity.Property(e => e.Alteracao).HasColumnType("datetime"); | |
entity.Property(e => e.CpfCnpj) | |
.IsRequired() | |
.HasMaxLength(15); | |
entity.Property(e => e.Inclusao).HasColumnType("datetime"); | |
entity.Property(e => e.Nome) | |
.IsRequired() | |
.HasMaxLength(250); | |
entity.Property(e => e.NomeRazao) | |
.IsRequired() | |
.HasMaxLength(250); | |
entity.Property(e => e.Obs).HasMaxLength(250); | |
entity.Property(e => e.RgIe).HasMaxLength(30); | |
entity.Property(e => e.Url).HasMaxLength(250); | |
entity.HasOne(d => d.IdUsuarioIncNavigation) | |
.WithMany(p => p.Vendedor) | |
.HasForeignKey(d => d.IdUsuarioInc) | |
.OnDelete(DeleteBehavior.ClientSetNull) | |
.HasConstraintName("FK_Vendedor_Usuario"); | |
}); | |
modelBuilder.Entity<TipoVendedor>(entity => | |
{ | |
entity.HasKey(e => e.IdTipoVendedor); | |
entity.Property(e => e.Descricao) | |
.IsRequired() | |
.HasMaxLength(250) | |
.IsUnicode(false); | |
entity.Property(e => e.Nome) | |
.IsRequired() | |
.HasMaxLength(50) | |
.IsUnicode(false); | |
}); | |
modelBuilder.Entity<VendedorTipo>(entity => | |
{ | |
entity.HasKey(e => new { e.IdVendedor, e.IdTipoVendedor }); | |
entity.Property(e => e.Inativo).HasColumnType("datetime"); | |
entity.Property(e => e.Inclusao).HasColumnType("datetime"); | |
}); | |
} | |
``` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment