[.net MVC] Model 驗證 Remote Attribute

Remote 主要功能為 遠端驗證 (會自動透過AJAX 的方式 去指定的位置 驗證)

應用地方例如

1.帳號需確認是否有重複

2.email 確認是否有重複

 

在Controller 先建好Action 方法

[AcceptVerbs("GET", "POST")]
public IActionResult VerifyEmail(string email)
{
    if (!_userService.VerifyEmail(email)) //後端取資料
    {
        return Json($"Email {email} is already in use.");
    }

    return Json(true);
}


然後在Model 內加上 Validation attributes

[Remote(action: "VerifyEmail", controller: "Users")]
public string Email { get; set; }

 

這邊要注意 Model 內的 Email prop 名稱 要與VerifyEmail 的參數名稱「相同」 才可以


參考文件 :

https://docs.microsoft.com/zh-tw/aspnet/core/mvc/models/validation?view=aspnetcore-3.1

ASP.NET MVC3 如何使用內建驗證功能達到前端與後端的同時驗證