我对寄存器模式远程验证限制为编辑控制器的方法
我的模型类
public class RegisterViewModel
{
[Required]
[StringLength(100, ErrorMessage = "Please enter a minimum of {2} characters", MinimumLength = 6)]
[DisplayName("University ID")]
[Remote("doesusernameExist", "HEC",null, ErrorMessage = "usr name is allready exist", HttpMethod = "POST")]
public string usrname { get; set; } }
的json控制器类
[HttpPost]
public JsonResult doesusernameExist(string usrname)
{
var institute = db.Institutes.Find(HEI_ID);
return Json(institute == null);
}
的创建我是新用户和编辑用户使用以上模型。所以没有创造另一种模式,我想禁用的编辑方法doesusernameExist调用方法
您也需要2个视图模型(最佳的解决方案),或者需要一个额外的值传递给'doesusernameExist()'使用方法(表示ID属性)的'AdditionalFields' p “RemoteAttribute”属性,以便您可以使用它来有条件地测试是否需要执行数据库检查(即,如果ID为null或为零,则为新对象,所以'返回Json(true);'或任何您想要应用的逻辑) – 2015-04-06 12:23:39