Вот модель для таблицы.Entity Framework - Обновление записей показывает ошибку аннотаций
public class Master
{
public int Id { get; set; }
public string EmailId { get; set; }
public string UniqueCode { get; set; }
....
[Required]
public string Password { get; set; }
[Required]
[NotMapped]
[System.ComponentModel.DataAnnotations.Compare("Password", ErrorMessage = "The password and confirmation password do not match.")]
public string ConfirmPassword { get; set; }
}
Когда я пытаюсь обновлять вышеупомянутую запись с помощью следующего кода, я получаю Validation ОШИБКИ The password and confirmation password do not match.
, The confirmation password is required.
.
Свойство пароля подтверждения не отображается. Как настроить аннотации при обновлении записи? : -
var data = ctx.tblMaster.Where(m => m.EmailId == emailId).Select(m => m).SingleOrDefault();
data.UniqueCode = UniqueCode;
ctx.tblMaster.Attach(data);
ctx.Entry(data).State = EntityState.Modified;
ctx.SaveChanges();
Этот код написан на сайт Забыли пароль, Так в представлении я просто по электронной почте вариант Id Textbox .. – Anup
Вы можете условно удалить поля в состоянии модели с контроллера, как, пожалуйста, см. Мой обновленный код – BSG
Как вы можете видеть из моего кода ... Я прохожу только по электронной почте на слой данных, а ModelState не участвует ... & я получаю данные из db с условием электронной почты, а затем я обновляю его ... Так есть ли другое решение? – Anup