ASP.NET MVC – 要从外部控制器或视图确定的内容的绝对URL
发布时间:2020-12-16 07:27:48 所属栏目:asp.Net 来源:网络整理
导读:我有一些内容坐在这样的道路上: /Areas/MyUsefulApplication/Content/_awesome_template_bro/Images/MyImage.png 有没有办法获得一个完全限定的绝对URL到该路径,而不是在控制器或视图中(url助手随时可用). 解决方法 你可以写一个扩展方法: public static c
我有一些内容坐在这样的道路上:
有没有办法获得一个完全限定的绝对URL到该路径,而不是在控制器或视图中(url助手随时可用). 解决方法
你可以写一个扩展方法:
public static class UrlExtensions { public static Uri GetBaseUrl(this UrlHelper url) { var uri = new Uri( url.RequestContext.HttpContext.Request.Url,url.RequestContext.HttpContext.Request.RawUrl ); var builder = new UriBuilder(uri) { Path = url.RequestContext.HttpContext.Request.ApplicationPath,Query = null,Fragment = null }; return builder.Uri; } public static string ContentAbsolute(this UrlHelper url,string contentPath) { return new Uri(GetBaseUrl(url),url.Content(contentPath)).AbsoluteUri; } } 然后假设你有一个UrlHelper的实例: string absoluteUrl = urlHelper.ContentAbsolute("~/Areas/MyUsefulApplication/Content/_awesome_template_bro/Images/MyImage.png"); 如果你需要在你无法访问HttpContext并构建UrlHelper的代码的其他部分中执行此操作,那么,您不应该只有代码中有权访问它的部分应该处理url.你的代码的其他部分甚至不知道url意味着什么. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 使用自定义ASP.NET MVC IValueProvider,而不
- asp.net-mvc – NHibernate和上下文实体
- asp.net-mvc – ASP.NET MVC单元测试 – 会话
- asp.net – Async / Await和AsyncController?
- asp.net – 如何使我的硒测试不那么脆弱?
- asp.net-mvc-3 – 请参阅控制器中的验证摘要
- asp.net – bootstrap中的body-content类是什么
- asp.net – 如何将转发器绑定到列表以更新绑定的项目? (2种
- asp.net-mvc – MVC:传入字典的模型项是X类型,但是这个字典
- asp.net-mvc – 没有ViewContext的Url表单操作
推荐文章
站长推荐
- asp-classic – 如何判断ASP中的变量是否已声明
- Asp.Net MVC 5 Owin Twitter Auth throwing 401
- asp.net-mvc – 如何使用MVC调用JQuery UI模式(C
- asp.net-mvc – ASP.Net [HiddenInput]数据属性在
- asp.net-mvc – ASP.NET MVC:post-redirect-get
- asp.net – 多个客户端应该有一个项目副本,还是每
- asp.net – 如何拦截WCF .svc服务中对方法的所有
- asp.net-mvc – 使用SimpleMembership获取用户信
- asp.net-mvc – 为多语言ASP.NET MVC Web应用程序
- IIS部署asp.net mvc网站的方法
热点阅读