title: Why is my entity type association being severed?
body: <p>So I am currently attempting to seed the dev database with test info for our developers, but I am running into this issue - <br><strong>The association between entity types 'UserProfile' and 'ProjectProgress' has been severed but the relationship is either marked as 'Required' or is implicitly required because the foreign key is not nullable. If the dependent/child entity should be deleted when a required relationship is severed, then setup the relationship to use cascade deletes.  Consider using 'DbContextOptionsBuilder.EnableSensitiveDataLogging' to see the key values.</strong></p>
  
  <p>User Profile Model - <br></p>
  
  <pre><code>        public int UserProfileId { get; set; }
          public UserProfileStatus UserProfileStatusId { get; set; } = UserProfileStatus.Active;
          public SiteRole SiteRoleId { get; set; }
          [MaxLength(100)]
          public string Username { get; set; }
          [MaxLength(50)]
          public string Password { get; set; }
          [MaxLength(100)]
          public string FirstName { get; set; }
          [MaxLength(100)]
          public string LastName { get; set; }
          [MaxLength(20)]
          public string Phone { get; set; }
          [MaxLength(150)]
          public string Email { get; set; }
          public DateTime PasswordChangeDt { get; set; } = DateTime.UtcNow;
          public DateTime? LastLoginDt { get; set; }
          public int InvalidLogins { get; set; }
          public bool Locked { get; set; }
          public DateTime? LockoutEnd { get; set; } //local copy of auth db value
          public bool Analyst { get; set; }
          public bool Reviewer { get; set; }
          public bool Broker { get; set; }
          public bool EmailGlobalStatusAlerts { get; set; }
          public bool EmailReviewerStatusAlerts { get; set; }
          public bool EmailAssignedStatusAlerts { get; set; }
          public bool Active { get; set; }
          public int? BankId { get; set; }
  
          public int AddBy { get; set; }
          public DateTime AddDt { get; set; } = DateTime.UtcNow;
          public int ModBy { get; set; }
          public DateTime ModDt { get; set; } = DateTime.UtcNow;
  
          public virtual Bank Bank { get; set; }
  
          [InverseProperty(nameof(ReviewerAnalyst.Analyst))]
          public virtual ICollection&lt;ReviewerAnalyst&gt; AnalystReviewers { get; set; } = new 
          List&lt;ReviewerAnalyst&gt;();
          [InverseProperty(nameof(DocumentAccessLog.AccessUser))] 
          public virtual ICollection&lt;DocumentAccessLog&gt; DocumentAccessLogs { get; set; } = new 
          List&lt;DocumentAccessLog&gt;();
          public virtual ICollection&lt;EmailLog&gt; EmailLogs { get; set; } = new List&lt;EmailLog&gt;();
          public virtual ICollection&lt;Note&gt; Notes { get; set; } = new List&lt;Note&gt;();
          [InverseProperty(nameof(Project.Analyst))]
          public virtual ICollection&lt;Project&gt; ProjectAnalyst { get; set; } = new List&lt;Project&gt;();
          [InverseProperty(nameof(Project.Reviewer))]
          public virtual ICollection&lt;Project&gt; ProjectReviewer { get; set; } = new List&lt;Project&gt;();
          [InverseProperty(nameof(ReviewerAnalyst.Reviewer))]
          public virtual ICollection&lt;ReviewerAnalyst&gt; ReviewerAnalysts { get; set; } = new 
          List&lt;ReviewerAnalyst&gt;();
          public virtual ICollection&lt;TimeOff&gt; TimeOffs { get; set; } = new List&lt;TimeOff&gt;();
          [InverseProperty(nameof(TimeOff.Approver))]
          public virtual ICollection&lt;TimeOff&gt; TimeOffApprovals { get; set; } = new List&lt;TimeOff&gt;();
          public virtual ICollection&lt;UserEmailType&gt; UserEmailTypes { get; set; } = new 
          List&lt;UserEmailType&gt;();
          public virtual ICollection&lt;UserRole&gt; UserRoles { get; set; } = new List&lt;UserRole&gt;();
  </code></pre>
  
  <p>ProjectProgress Model - <br></p>
  
  <pre><code>    public int ProjectProgressId { get; set; }
      public int ProjectId { get; set; }
      public int ProgressId { get; set; }
      [MaxLength(250)]
      public string Notes { get; set; }
      public bool Complete { get; set; }
      public int AddBy { get; set; }
      public System.DateTime AddDt { get; set; }
  
      public virtual Project Project { get; set; }
      public virtual Progress Progress { get; set; }
      [ForeignKey("AddBy")]
      public virtual UserProfile UserProfile { get; set; }
  </code></pre>
  
  <p>I don't know exactly is needed to help troubleshoot this issue, but let me know and I will update the question.</p>