私はMVC3を初めて使用します。ItemNoフィールドを一意のフィールドとして使用しています。ただし、そのフィールドは編集可能です。ItemNoに既存の値を使用して値を作成すると、リモート検証は正常に機能します。編集可能モードでこれを行うと、アクションメソッドの作成と同じことを繰り返します。
これが私の検証コントローラーです。
<!-- language: lang-js -->
[OutputCache(Location = OutputCacheLocation.None, NoStore = true)]
public class ValidationController : Controller
{
ItemControlDBContext db = new ItemControlDBContext();
public JsonResult IsItemNoAvailable(string ItemNo)
{
List<string> ItemNos = (from no in db.Item select no.ItemNo).ToList();
if (ItemNos.Contains(ItemNo.ToLower()))
{
return Json("The ItemNo is already available. Try another.", JsonRequestBehavior.AllowGet);
}
return Json(true, JsonRequestBehavior.AllowGet);
}
}
これが私のモデルクラスです
[Required]
[Remote("IsItemNoAvailable", "Validation")]
[Editable(true)]
public string ItemNo { get; set; }
plsは私が編集可能なモードでこれを達成することができる方法を私に提案します。