public class Page
{
[Remote("CheckDuplicate", "Home", ErrorMessage = "Name already taken")]
public string Name { get; set; }
}
在控制器中,我将根据“检查”结果返回JsonResult数据,如下所示:
public JsonResult CheckDuplicate(string Name )
{
var result = db.abc.Where(a => a.Name == Name ).Count() == 0;
return Json(result, JsonRequestBehavior.AllowGet);
}
这在添加新名称时工作正常,但问题是,它限制我编辑,因为它正在检查相同的查询。 我正在使用Telerik Grid ASP.NET MVC并使用(GridEditMode.PopUp)方法
答案 0 :(得分:0)
在您的代码中进行这些修改。
public class Page
{
[DefaultValue(0)]
public int ID { get; set; }
[Remote("CheckDuplicate", "Home", AdditionalFields = "ID", ErrorMessage = "Name already taken")]
public string Name { get; set; }
}
并在控制器中
public JsonResult CheckDuplicate(string Name, int Id)
{
var result = db.abc.Where(a => (Id == 0) ? (a.Name == Name && a.ID != Id) : (a.Name == Name)).Count() == 0;
return Json(result, JsonRequestBehavior.AllowGet);
}
您可以使用更多其他字段,并用逗号分隔它们。 例如:AdditionalFields =“ID,ID2
“