это моя сущность:
public partial class Student
{
public string Code { get; set; }
public int Year { get; set; }
public string Name { get; set; }
public string Gender { get; set; }
}
Конфиг:
HasKey(e => new { e.Code, e.Year});
Property(b => b.Code).HasColumnName("CODE").IsUnicode(false).HasMaxLength(20).IsRequired();
Property(b => b.Year).HasColumnName("YEAR").IsRequired();
Property(b => b.Name).HasColumnName("NAME").IsUnicode(false).HasMaxLength(50);
Property(b => b.Gender).HasColumnName("GENDER").IsUnicode(false).HasMaxLength(2).IsRequired();
Поле пола также имеет обязательную опцию.В моем обновлении я только хочу обновить поле имени:
var student = new Student
{
Code = "WRK",
Year = 2018,
Name = "Test Name"
};
_context.Student.Attach(student);
_context.Entry(student).Property(x => x.Name).IsModified = true;
_context.SaveChanges();
В SaveChanges это дает исключение DbEntityValidationException, говоря, что поле пола обязательно.Хотя я не хочу его обновлять, но сохраняю существующее значение из базы данных.
Существует ли правильное решение без предварительного запроса базы данных, чтобы получить существующее значение для этого пола?
Спасибо.