在ASP.NET MVC中,我如何使用C#代码中的Razor @ Url.Content()助手?
我试图写一个html助手扩展输出图像标签。 我需要访问(在C#代码中)像Razor的@ Url.Content()帮助器来获取当前上下文的正确的URL。 如何做到这一点?
使用以下代码模仿Url.Content。
VirtualPathUtility.ToAbsolute("~/url/");
您可以通过传递适当的ViewContext
来创build自己的UrlHelper
实例。 例如,要从图像帮助程序执行此操作:
public static string CustomImage(this HtmlHelper html) { var Url = new UrlHelper(html.ViewContext.RequestContext); }
在这一点上,您可以调用Url.Content()
或任何其他UrlHelper
方法。
也许这样的事情?
public static string MyHelper(this HtmlHelper h) { string url = h.ViewContext.HttpContext.Request.Url.AbsoluteUri; }
是的你可以。
从一个控制器,你可以调用:
this.Url.Content("~/Somerelativepath?somethingelse=true");
是的,使用这个代码将url.content添加到你的代码中,这是工作,兄弟和sist
[sample] var img_btn_edit = VirtualPathUtility.ToAbsolute(“〜/ Content / images / pencil.png”);
你可以到达Request对象,从而得到这样的URL:
string fullUrl = HttpContext.Current.Request.Url.AbsoluteUri;