我需要在 ASP.NET core 1.0.1 中获取一些操作的绝对 URL:
public IActionResult Test(IUrlHelper urlHelper) {
var url = urlHelper.Action(nameof(HomeController.Index), Request.Scheme)
return Ok(url);
}
或者
public IActionResult Test(IUrlHelper urlHelper) {
var url = urlHelper.RouteUrl(nameof(HomeController.Index), Request.Scheme)
return Ok(url);
}
这些都没有给我家庭路线的绝对网址。
我怎样才能做到这一点?
最佳答案
我尝试了多种解决方案,但没有一个提供所需的输出,我使用的是 Core 2.2。
通过 Muhammad Rehan Saeed 检查此答案在那里他创建了一个辅助扩展来实现这个功能。 (2016 年 6 月为 Core 1.0 RC 及以后回答,它仍在工作)
他的回答已经被Josiah修改了(在 2017 年 11 月,在同一问题中),他没有创建新的 Helper,而是扩展了现有的 .NET Core MVC 类,以便所需的功能看起来是 native 解决方案:
Url.AbsoluteAction(...)
Url.AbsoluteContent(...)
Url.AbsoluteRouteUrl(...)
代码有据可查且易于使用。希望它对在这个看似简单的任务的解决方案中迷失的人们有所帮助。
关于asp.net-core - 在 ASP.NET Core 中获取 Action 的绝对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40206820/