.Net Core中的数据注释仅是客户端,还是可以验证服务器端?

问题描述

我已阅读到人们可以从浏览器或某些内容中删除javascript,并且客户端验证将停止工作,这对我们进行服务器端验证非常重要。

在.NET Core中,我们具有数据注释,这对于服务器端和客户端都有效吗?还是需要在服务器端进行验证?

还使用[Remote]验证是同一回事吗?我正在同时使用这两种方法,并且不确定是否需要对create()操作进行验证。

还有一件事,ModelState.IsValid()是否可以用于远程验证?谢谢您的帮助

示例:

public IActionResult VerifyCargo(string Descricao,int ID_Cargo)
{
    var validateName = ValidateName(Descricao);

    if (validateName != null)
    {
        return Json($"Description {Descricao} is already in use.");
    }
    else
    {
        return Json(true);
    }
}

public RH_Cargos ValidateName(string Descricao)
{
    return _context.RH_Cargos.FirstOrDefault(x => x.Descricao == Descricao);
}

我具有这些功能,并且在模型中,我有一个[remote]注释,该注释会调用第一个函数...

它工作正常,但是我需要对Create动作进行任何验证吗?还是这个remote属性对服务器/客户端都有用?安全吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)