Referenciar a mesma entidade na entidade

SQL Server

.NET

Modelagem

22/07/2015

Boa noite,

Estou trabalhando com .NET, programando usando Code First. A minha dúvida é a seguinte, tenho uma classe chamada Pessoa e a mesma é referenciada no BD, tenho que ter um atributo Pessoa pessoaSalvou; para saber qual pessoa que salvou e irei usar mais para frente em outros processos. Mas quando faço essa referencia o BD diz que não é possível referenciar pois é a mesma entidade. Alguém pode me ajudar?
Yuri Moraes

Yuri Moraes

Curtidas 0

Respostas

Jothaz

Jothaz

22/07/2015

Posta a sua classe e se possível o modelo de classe e de dados.
GOSTEI 0
Yuri Moraes

Yuri Moraes

22/07/2015

A entidade é:

public class Pessoa
{
public int PessoaID { get; set; }
public string Nome { get; set; }
public string Telefone1 { get; set; }
public bool Aprovador { get; set; }
public DateTime DataCadastro { get; set; }
public int Aprovador1ID { get; set; }
public virtual Pessoa Aprovador1 { get; set; }
}

e sua EntityConfig é:

public class PessoaConfiguration: EntityTypeConfiguration<Pessoa>
{
public PessoaConfiguration()
{
HasKey(p =>p.PessoaID);
Property(p => p.Nome)
.IsRequired()
.HasMaxLength(150);

/* Minha duvida esta aqui
HasOptional(p => p.Aprovador1)
.WithMany()
.HasForeignKey(p => p.Aprovador1ID);*/

}
}
GOSTEI 0
Yuri Moraes

Yuri Moraes

22/07/2015

A entidade é:

public class Pessoa
{
public int PessoaID { get; set; }
public string Nome { get; set; }
public string Telefone1 { get; set; }
public bool Aprovador { get; set; }
public DateTime DataCadastro { get; set; }
public int Aprovador1ID { get; set; }
public virtual Pessoa Aprovador1 { get; set; }
}

e sua EntityConfig é:

public class PessoaConfiguration: EntityTypeConfiguration<Pessoa>
{
public PessoaConfiguration()
{
HasKey(p =>p.PessoaID);
Property(p => p.Nome)
.IsRequired()
.HasMaxLength(150);

/* Minha duvida esta aqui
HasOptional(p => p.Aprovador1)
.WithMany()
.HasForeignKey(p => p.Aprovador1ID);*/

}
}
GOSTEI 0
Randrade

Randrade

22/07/2015

Iago, sempre ao postar código, utilize a tag code </> no editor. Deixa o código mais limpo e fácil de entender.

A entidade é: 

public class Pessoa
{
public int PessoaID { get; set; }
public string Nome { get; set; }
public string Telefone1 { get; set; }
public bool Aprovador { get; set; }
public DateTime DataCadastro { get; set; }
public int Aprovador1ID { get; set; }
public virtual Pessoa Aprovador1 { get; set; }
}

e sua EntityConfig é: 

public class PessoaConfiguration: EntityTypeConfiguration<Pessoa>
{
public PessoaConfiguration() 
{
HasKey(p =>p.PessoaID);
Property(p => p.Nome)
.IsRequired()
.HasMaxLength(150);

/* Minha duvida esta aqui
HasOptional(p => p.Aprovador1)
.WithMany()
.HasForeignKey(p => p.Aprovador1ID);*/

}
}




Poste o erro mostrado (em inglês mesmo).
GOSTEI 0
POSTAR