Удаленная проверка Json MVC - PullRequest
0 голосов
/ 15 мая 2019

Мне нужно проверить значение поля ввода от пользователя до отправки формы.Я создал действие в своем пользовательском контроллере и украсил поле Месяцем.

[Required]
        [DataType(DataType.Date)]
        //[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:Y}")]
        [DisplayFormat(DataFormatString = "{0:dd/MMM/yyyy}")]
        [Display(Name = "Month")]
        [Remote("IsvalidMonth", "Objectives", AdditionalFields = "UserID,SalesObjectiveID", ErrorMessage = "Month already existing")]
        //[DisplayFormat(DataFormatString = "{0:MMM-yyyy}")]
        public Nullable<System.DateTime> Month { get; set; }    

И мое подтверждение:

public JsonResult IsvalidMonth(DateTime Month, int? SalesObjectiveID, int? UserID)
        {
            var monthexist = _context.TBL_SalesObjective.Where(x => x.Month == Month && x.SalesObjectiveID == SalesObjectiveID && x.UserID == UserID).FirstOrDefault().Month;

            return Json(!monthexist, JsonRequestBehavior.AllowGet);
        }

но я не могу использовать! Monthexist, потому что Оператор!не может быть применено.

Как я могу сделать проверку в Monht?

1 Ответ

0 голосов
/ 15 мая 2019

'!' оператор может использоваться с логическим значением, здесь, так как вы делаете .FirstOrDefault().Month, который не является логическим значением, вы не можете использовать '!' оператор.

Пожалуйста, попробуйте следующий код в вашем IsvalidMonth() методе

var monthexist = _context.TBL_SalesObjective.Any(x => x.Month == Month && x.SalesObjectiveID == SalesObjectiveID && x.UserID == UserID);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...