[英]Extension methods for Identity Controllers in ASP.Net Core 2.2 App
在我較老的MVC應用中,我有一些擴展方法,例如以下
public static string ChangePasswordCallbackLink(this IUrlHelper urlHelper, string appUserId, string parameter)
{
return urlHelper.Action(
action: nameof(AccountController.ChangePassword),
controller: "Account",
values: new { appUserId, parameter}
);
}
當您不再使用默認的Asp.Net Core 2.2 Web應用程序中的身份頁面時,由於不再有帳戶控制器(我在Core中仍然不了解這一點),如何創建這種類型的擴展?
AccountController只是一個腳手架類,包含用於用戶帳戶管理的基本邏輯,您可以輕松地自行創建它。 我做了HomeController,其中包含ChangePassword動作方法和帶有預定義參數的HomePage鏈接:
public static class Extensions
{
public static string ChangePasswordCallbackLink(this IUrlHelper urlHelper, string appUserId, string parameter)
{
return urlHelper.Action(
action: nameof(HomeController.ChangePassword),
controller: "Home",
values: new { appUserId, parameter }
);
}
}
public class HomeController : Controller
{
public IActionResult ChangePassword(string appUserId, string parameter)
{
return View();
}
public IActionResult Index()
{
var link = Url.ChangePasswordCallbackLink("123", "qwerty");
return View(model: link);
}
}
書面擴展名方法仍然有效
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.