Кто-нибудь знает, как я могу выполнить удаленную проверку по комбинации раскрывающегося списка в MVC 5?
Короче говоря, я назначаю клиента пользователю, поэтому хочу убедиться, что клиент не можетбыть назначенным одному и тому же пользователю дважды.
Я создал действие проверки в моем контроллере, но оно не работает.Он говорит мне, что клиент был назначен пользователю независимо от комбинации, даже если эта комбинация не существует в базе данных.
Вот как выглядит моя модель:
public class UserCustomer : BaseAttributes
{
[Key]
public int UserCustomerID { get; set; }
[Remote("CustomerAssignedToUser", "UserCustomer", AdditionalFields = "ApplicationUserID", ErrorMessage = "The customer has already been assigned to the selected user!")]
public int CustomerID { get; set; }
public virtual Customer Customer { get; set; }
public int ApplicationUserID { get; set; }
public virtual ApplicationUser ApplicationUser { get; set; }
}
Вот действие проверки в моем контроллере:
public JsonResult CustomerAssignedToUser(int CustomerID, int ApplicationUserID)
{
return Json(!db.UserCustomers.Any(x => x.CustomerID == CustomerID && x.ApplicationUserID == ApplicationUserID), JsonRequestBehavior.AllowGet);
}
Вот два раскрывающихся списка на мой взгляд:
@Html.DropDownListFor(model => model.CustomerID, new SelectList((System.Collections.IEnumerable)ViewData["CustomerID"], "Value", "Text"), htmlAttributes: new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.CustomerID, "", new { @class = "text-danger" })
@Html.DropDownListFor(model => model.ApplicationUserID, new SelectList((System.Collections.IEnumerable)ViewData["ApplicationUserID"], "Value", "Text"), htmlAttributes: new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.ApplicationUserID, "", new { @class = "text-danger" })
Помощь будет оценена.Я на всю жизнь не вижу, что не так с моим кодом.