Mam następujących klas:EF 4.1 błąd integralności Więzy
public class Person
{
[Key]
public Guid Id { get; set; }
[Required]
public string FirstName { get; set; }
[Required]
public string LastName { get; set; }
[Required]
public string Email { get; set; }
public virtual Survey Survey { get; set; }
}
public class Survey
{
[Key]
public Guid Id { get; set; }
public bool IsFinished { get; set; }
public virtual ICollection<UserAnswer> UserAnswers { get; set; }
public virtual Person Person { get; set; }
}
public class UserAnswer
{
[Key]
public Guid Id { get; set; }
public Guid SurveyId { get; set; }
public virtual Survey Survey { get; set; }
public Guid QuestionId { get; set; }
public virtual Question Question { get; set; }
public Guid AnswerId { get; set; }
public virtual Answer Answer { get; set; }
}
w moim datacontext Mam zdefiniowane:
modelBuilder.Entity<Survey>().HasRequired(s => s.Person).WithOptional();
modelBuilder.Entity<Survey>().HasMany(s => s.UserAnswers).WithRequired(a => a.Survey).HasForeignKey(a => a.SurveyId).WillCascadeOnDelete(false);
Czy ktoś może mi powiedzieć co robię źle?
Aktualizacja:
Kiedy wykonać ten kod:
var surveyRepository = new SurveyRepository();
foreach (var userAnswer in userAnswers)
{
survey.UserAnswers.Add(userAnswer);
}
surveyRepository.InsertOrUpdate(survey);
surveyRepository.Save();
pojawia się następujący błąd:
A referential integrity constraint violation occurred: The property values that define the referential constraints are not consistent between principal and dependent objects in the relationship.
Jakiego błędu dostałeś i kiedy? –