【发布时间】:2018-09-04 21:43:49
【问题描述】:
我有注册模型
我的模型类
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);
}
用于创建新用户和编辑用户,我正在使用上述模型。所以在不创建另一个模型的情况下,我想在编辑方法中禁用 dosusernameExist 调用方法
【问题讨论】:
-
您需要 2 个视图模型(最佳解决方案),或者您需要使用
RemoteAttribute的AdditionalFields属性将附加值传递给doesusernameExist()方法(例如 ID 属性)所以您可以使用它来有条件地测试是否需要执行数据库检查(即,如果 ID 为 null 或为零,则它是一个新对象,所以return Json(true);或您要应用的任何逻辑)
标签: asp.net asp.net-mvc-4 razor remote-validation