在ASP.NETMVC中,如何使用C#代码中的Razor@Url.Content()助手?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (29)

我试图编写一个输出图像标签的html助手扩展。我需要访问(在C#代码中)类似Razor的@ Url.Content()帮助器来获取当前上下文的正确URL。如何做到这一点?

提问于
用户回答回答于

可以UrlHelper通过传递适当的值来创建自己的实例ViewContext。例如,要从图像帮助程序执行此操作:

public static string CustomImage(this HtmlHelper html)
{
    var Url = new UrlHelper(html.ViewContext.RequestContext);
}

此时可以调用Url.Content()或任何其他UrlHelper方式。

用户回答回答于

使用下面的代码模拟Url.Content。

VirtualPathUtility.ToAbsolute("~/url/");

扫码关注云+社区