c# - 为什么远程验证在 MVC 上不起作用?
问题描述
我在我的项目中进行了远程验证,以避免数据库中的重复条目。我的元数据是这样的:
[Remote("CheckUserName", "Home", ErrorMessage = "This is a duplicate program ")]
public string UserName { get; set; }
在我的 HomeController 我有这样的功能
public JsonResult CheckUserName(string UserName)
{
if (!RUser.DupUserName(UserName))
{
return Json(true, JsonRequestBehavior.AllowGet);
}
else
{
return Json(false, JsonRequestBehavior.AllowGet);
}
}
在我的创建视图中
<td>@Html.EditorFor(model => model.UserName)</td>
<td>@Html.ValidationMessageFor(model => model.UserName)</td>
<script src="~/Scripts/jquery-3.3.1.min.js"></script>
<script src="~/Scripts/jquery.validate.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
在存储库中
public bool DupUserName(string UserName)
{
int q = (from a in db.Tbl_User
where a.UserName.Equals(UserName)
select a).Count();
return Convert.ToBoolean(q);
}
在我看来一切都很好,但这种验证不起作用。谁能指出我在这里做错了什么?我也尝试过使用 RemoteAttribute 的重载,但它不起作用。
解决方案
推荐阅读
- html - Bootstrap 4 nav-tabs 将排列保持在移动屏幕上
- c++ - 我无法计算出相等的范围
- python-3.x - 比较两个数据帧并根据第一个 df 返回差异
- mysql - 滞后函数中组函数的使用无效
- c++ - 当模板参数是特定模板类时,使用概念启用成员函数
- swift - 具有多个组件的动态 PickerView:索引超出范围
- rust - 如何将版本信息从 Vergen 传递到 StructOpt?
- python - 在高精度计算导数时除以零误差
- node.js - 模拟器和网络本地主机的不同风格的离子
- c# - C# + REST API + HttpClient + 请求跟踪器