2015-08-15 3 views
0
[System.Web.Mvc.Remote("CheckIdCard", "Lockers", ErrorMessage = "This Id Card have been used, Locker id is {0}{1}{2}")] 
[MaxLength(18)] 
public string IdCard { get;set;} 

IF id Card существует в базе данных, после чего клиент отобразит идентификатор этой записи.Как пользовательская ошибка проверки подлинности в mvc 5?

Какой метод я должен переопределить ???

public class CustomErrMsgRemoteAttribute : System.Web.Mvc.RemoteAttribute, IClientValidatable 
{ 
    public override string FormatErrorMessage(string name) 
    { 
     return base.FormatErrorMessage(name); 
    } 
    //public override 
} 

[OutputCache(Location = OutputCacheLocation.None, NoStore = true)] 
    public JsonResult CheckIdCard(string IdCard) 
    { 
     bool isValidate = false; 
     string val=string.empty; 
     var locker = db.Lockers.Where(l => l.IdCard == IdCard).FirstOrDefault(); 
     if (locker==null) 
     { 
      isValidate = true; 
     } 
     else 
     { 
      string val=locker.Id; 
     } 
     // retrun this locker.id in errormessage; 
     return Json(isValidate, JsonRequestBehavior.AllowGet); 
    } 

Я не знаю, как написать этот код, спасибо.

ответ

0

Поместите это в вашем файле метаданных или модели класса

[RemoteAttribute("IsRegionCodeExists", "Region",ErrorMessage="Region Code exists, 
public string RegionCode { get; set; } 

ТЕПЕРЬ В контроллере

// 
    // GET: /Region/ 
    public JsonResult IsRegionCodeExists(string RegionCode) 
    { 
     return IsExist(RegionCode) ? Json(true, JsonRequestBehavior.AllowGet) : Json(false, JsonRequestBehavior.AllowGet); 
    } 

    public bool IsExist(string RegionCode) 
    { 
     var _model = (from s in db.Regions 
         where s.RegionCode == RegionCode 
         select s.RegionCode).FirstOrDefault(); 


     if (string.IsNullOrEmpty(RegionCode)) return false; 

     else if (_model!=null) 
      return false; 
     else return true; 
    } 
Смежные вопросы