Una a una relación opcional usando Entity Framework Fluent API

Queremos usar una relación de uno a uno usando el código de Entity Framework primero. Tenemos dos entidades.

public class PIIUser
{
    public int Id { get; set; }

    public int? LoyaltyUserDetailId { get; set; }
    public LoyaltyUserDetail LoyaltyUserDetail { get; set; }
}

public class LoyaltyUserDetail
{
    public int Id { get; set; }
    public double? AvailablePoints { get; set; }

    public int PIIUserId { get; set; }
    public PIIUser PIIUser { get; set; }
}

PIIUser puede tener unLoyaltyUserDetail peroLoyaltyUserDetail debe tener unPIIUser. Probamos estas técnicas de aproximación fluida.

modelBuilder.Entity<PIIUser>()
            .HasOptional(t => t.LoyaltyUserDetail)
            .WithOptionalPrincipal(t => t.PIIUser)
            .WillCascadeOnDelete(true);

Este enfoque no creóLoyaltyUserDetailId clave externa enPIIUsers mesa.

Después de eso probamos el siguiente código.

modelBuilder.Entity<LoyaltyUserDetail>()
            .HasRequired(t => t.PIIUser)
            .WithRequiredDependent(t => t.LoyaltyUserDetail);

Pero esta vez, EF no creó ninguna clave externa en estas 2 tablas.

¿Tienes alguna idea para este problema? ¿Cómo podemos crear una relación de uno a uno utilizando el framework de entidad con fluidez api?

Respuestas a la pregunta(6)

Su respuesta a la pregunta