In ASP.NET Core MVC I am doing EF code-first migrations:
public class Mandate
{
public Mandate()
{
Id = System.Guid.NewGuid();
}
[Key]
[Required]
public Guid Id { get; set; }
public Guid MerchantId { get; set; }
public string ReferenceNumber { get; set; }
public decimal Amount { get; set; }
public DateTime CreatedDate { get; set; } = DateTime.UtcNow;
public virtual Merchant Merchant { get; set; }
public virtual ICollection<MandateDetail> MandateDetails { get; set; }
}
public class MandateDetail
{
public MandateDetail()
{
Id = System.Guid.NewGuid();
}
[Key]
[Required]
public Guid Id { get; set; }
public Guid MandateId { get; set; }
public Guid MerchantId { get; set; }
public DateTime CreatedDate { get; set; } = DateTime.UtcNow;
public virtual Merchant Merchant { get; set; }
public virtual Mandate Mandate { get; set; }
}
public class Merchant
{
public Merchant()
{
Id = System.Guid.NewGuid();
}
[Key]
[Required]
public Guid Id { get; set; }
public string MerchantName { get; set; }
public decimal ChargeValue { get; set; }
public virtual ICollection<Mandate> Mandates { get; set; }
public virtual ICollection<MandateDetail> MandateDetails { get; set; }
}
When I did:
PM> add-migration -verbose
I got this error:
Introducing FOREIGN KEY constraint 'FK_mandate_details_merchants_MerchantId' on table 'mandate_details' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints. Could not create constraint or index. See previous errors.
How do I resolve this?
Thanks