2016-04-15 28 views
0

我正在使用遠程驗證程序,但即使調試程序未跟蹤該方法也無法正常工作。遠程驗證在mvc中不起作用。

 public JsonResult CheckStrategyName(string StrategyName) 
     { 
      var ab = from a in db.Sterategy where a.StrategyName == StrategyName select a.StrategyName; 

      return !ab.Any() ? Json(true, JsonRequestBehavior.AllowGet) : Json(string.Format("Name Already esists"), JsonRequestBehavior.AllowGet); 
     } 

我在這裏用它

 [Required] 
     [Remote("CheckStrategyName", "St", ErrorMessage = "Already exists ")]  
     [Display(Name = "Name")] 
     public string StrategyName { get; set; } 

Webconfig

<appSettings> 
    <add key="webpages:Version" value="3.0.0.0" /> 
    <add key="webpages:Enabled" value="false" /> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
    </appSettings> 

我在哪裏犯錯? :(

回答

1

服務器代碼&設置似乎是罰款。請確保以下到位

  1. 您正在使用TextBoxFor輔助方法來生成相應的輸入區的標記和它是一個內形式

    @using (Html.BeginForm()) 
    {  
        @Html.TextBoxFor(s => s.StrategyName) 
        @Html.ValidationMessageFor(s => s.StrategyName)  
    
        <input type="submit" value="Submit" /> 
    } 
    
  2. 您已經包括進行驗證所需的JavaScript庫。

    <script src="~/Scripts/jquery.js"></script> 
    <script src="~/Scripts/jquery.validate.js"></script> 
    <script src="~/Scripts/jquery.validate.unobtrusive.js"></script> 
    
+0

我沒有包含那些庫。現在它的工作,非常感謝。 – Nil