如何从我制作的Html Helper类中获取完整的Url?

时间:2009-08-22 18:09:10

标签: c# asp.net asp.net-mvc

我有一个html帮助程序库,我正在制作,我的一个插件需要传递的URL。我不想传递完整的URL,因为他们每次我改变一些东西我必须去修复所有网址。

如何在文件中获取完整的Url路径?就像我传入一个相对路径或其他东西一样,它会被解析为一条完整的路径。

3 个答案:

答案 0 :(得分:2)

VirtualPathUtility可能是一个值得关注的地方。例如,使用

VirtualPathUtility.ToAbsolute(src);

将像“〜/ App / test.jpg”这样的路径渲染到绝对位置,例如“/VirtualDirectory/App/test.jpg”以及相对路径。在UrlHelper(例如Content)类的实例上公开的方法也可能有所帮助。

答案 1 :(得分:1)

对于此线程的未来访问者,我经常使用以下代码

var baseUrl = HttpContext.Current.Request.Url.AbsoluteUri;
if (HttpContext.Current.Request.Url.LocalPath != "/")
    baseUrl = baseUrl.Replace(HttpContext.Current.Request.Url.LocalPath.Substring(1), "");

答案 2 :(得分:0)

您可以使用HttpContext.Current.Server.MapPath(string)