Entity Framework 4: Relacionamento 1 pra 1
Olá pessoal, continuando a serie de posts sobre a versão 4 do entity framework vou mostrar como podemos criar um relacionamento um pra um usando o Code-only e POCOs.
1-Entidades
No exemplo temos duas entidades: Pessoa e Conta bancária. No nosso exemplo uma pessoa possui ou não uma conta bancária
1: public class BankAccount
2: {
3: public virtual int BankAccountID { get; set; }
4: public virtual String AccountNumber { get; set; }
5: public virtual String BankName { get; set; }
6: public virtual Person Person { get; set; }
7: }
1: public class Person
2: {
3: public virtual int PersonID { get; set; }
4: public virtual String Name { get; set; }
5: public virtual String Email { get; set; }
6: public virtual BankAccount BankAccount { get; set; }
7: }
2- Configurações
1: public class PersonConfiguration : EntityConfiguration<Person>
2: {
3: public PersonConfiguration()
4: {
5: Property(p => p.PersonID).IsIdentity();
6: }
7: }
A configuração da classe Person é simples, vamos ver agora como fica a configuração de conta bancária
1: public class BankAccountConfiguration : EntityConfiguration<BankAccount>
2: {
3: public BankAccountConfiguration()
4: {
5: Property(ba => ba.BankAccountID).IsIdentity();
6:
7: //Definimos que existe um relacionamento com person que é requerido
8: Relationship<Person>(p => p.Person).FromProperty(b => b.BankAccount).IsRequired();
9: }
10: }
Pronto! temos todo o código necessário para o relacionamento um pra um. Quem quiser segue abaixo o link da solução completa.