2015-06-12 4 views
0

Я пытаюсь использовать Remote validation в своем приложении для проверки уже существующей записи.Удаленная проверка в mvc не работает

Здесь:

[Required(ErrorMessage = "*")] 
public Nullable<long> fk_Store_ID { get; set; } 

    [System.Web.Mvc.Remote("doesGround", "User", HttpMethod = "POST", ErrorMessage = "Ground Level is already exists for this store.", AdditionalFields = "fk_Store_ID")] 
[DefaultValue(false)] 
    public bool MembershipGroundLevel { get; set; } 

и мои действия контроллера:

[HttpPost] 
public JsonResult doesGround(bool MembershipGroundLevel, long? fk_Store_ID) 
{ 
    Int64 store_id = Convert.ToInt64(fk_Store_ID); 
    var count = db.tbl_Membership 
    .Where(o => o.fk_Store_ID == store_id && o.MembershipGroundLevel == true && o.isVisible == true).Count(); 
    return count >= 1 ? Json(false, JsonRequestBehavior.AllowGet) : Json(true, JsonRequestBehavior.AllowGet); 
} 

Здесь я получаю NULL значение для обеих сторон. Если я изменил тип данных на bool и long соответственно. Я получаю внутренний сервер ошибку 500

ответ

0

Я думаю, что ваше определение действия doesGround неправильно, попробуйте следующие один

public JsonResult doesGround(bool MembershipGroundLevel, long? fk_Store_ID) 

Это также хорошо, чтобы спросить, если ваш контроллер проверки UserController в Area, это да, вы необходимо указать название области в RemoteAttribute deffinition RoutData.

+0

вы можете показать нам сгенерированный html для входа 'fk_Store_ID' и' MembershipGroundLevel'? – tutok

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