2015-10-26 2 views
2

У меня есть некоторые трудности с редактированием данных. У меня есть свойство - ISBN. Я полагаю, что это уникальное значение. Когда я создаю новые данные, все в порядке, но когда я пытаюсь редактировать, он работает, что уже используется. Что я могу сделать?Невозможно редактировать уникальные значения

Класс Книги:

[Remote("IsISBNExists", "Book", ErrorMessage = "ISBN number is already in use")] 
public string ISBN { get; set; } 

BookController:

public JsonResult IsISBNExists(string Isbn) { 
    return Json(!bookContext.Books.Any(x => x.ISBN == Isbn), JsonRequestBehavior.AllowGet); 
} 

ответ

0

Вы можете включать в себя идентификатор записи, которую вы редактируете и использовать, чтобы определить, является ли ISBN используется ..

Просто добавьте свое поле идентификатора книги в параметр AdditionalFields, чтобы включить его в запрос проверки.

[Remote("IsISBNExists", "Book", AdditionalFields = "BookID", ErrorMessage = "ISBN number is already in use")] 
public string ISBN { get; set; } 

затем использовать это поле в проверке

public JsonResult IsISBNExists(string Isbn, int BookID) { 
    return Json(!bookContext.Books.Any(x => x.BookID != BookID && x.ISBN == Isbn), JsonRequestBehavior.AllowGet); 
} 
+0

Thx. Работает. –

Смежные вопросы