Почему удаленная проверка не работает на MVC? - PullRequest
0 голосов
/ 21 сентября 2019

Я сделал удаленную проверку в моем проекте, чтобы избежать дублирования записей в БД.Мои метаданные выглядят так:

[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, но она не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...