Удаленная проверка Jquery не запускается с enum - PullRequest
0 голосов
/ 09 октября 2018

У меня есть это перечисление

public enum EntityType
{
    TypeA, TypeB //etc...
}

Модель основного вида -

public class MainViewModel
{
    public EditModalView EditModalView {get;set;}
}

и, наконец,

public class EditEntityModalView
{
    [Required]
    [Remote("TestValidation", "Defaults", HttpMethod = "POST", AdditionalFields = "EntityType")]
    public string Name { get; set; }

    public EntityType EntityType { get; set; }
}

Например, я могу инициализировать MainViewModelв контроллере вот так:

    MainViewModel MainViewModel= new MainViewModel();

    MainViewModel.EditEntityModalView = new EditEntityModalView();
    MainViewModel.EditEntityModalView.EntityType = EntityType.TypeA;

    Return View(MainViewModel)

Теперь я хочу выполнить удаленную проверку следующим образом:

    [HttpPost]
    public JsonResult TestValidation(string Name,EntityType EntityType)
    {
       //Here just return false to test
        return Json(false, JsonRequestBehavior.AllowGet);
    }

Если я сделаю:

[Remote("TestValidation", "Defaults", HttpMethod = "POST")]
    public string Name { get; set; }

с этимопределение метода:

public JsonResult TestValidation(string Name)

Все хорошо.

Но если я хочу использовать enum в атрибуте remote, как показано выше, он больше не работает.Точка останова, установленная в методе, никогда не достигается.

Знаете ли вы, почему?

...