【发布时间】:2015-04-14 09:47:08
【问题描述】:
我有一个来自某个请求的 Uri 实例。 我有 "~/Pages/SomePage.aspx".
var uri = new Uri("http://www.contoso.com/");
var relativeUrl = "~/Pages/SomePage.aspx";
如何轻松地将两者结合起来?
你可能会问,上下文是什么?这是一个控制台应用程序,其中 Uri 和波浪号相对路径是手动构建的(这实际上是一个谎言,以获得“通用解决方案”,而不是 Page.Resolve 等)。
我尝试了一些方法(IE:HttpStyleUriParser),但没有得到正确的结果。而且我不想String.Format("{0}://{1}{2}{3}")我去那里。
【问题讨论】:
-
它实际上是一个托管 WCF 的 .net 应用程序,但请考虑一下我没有告诉你。
-
我想要一个通用的解决方案,只要你能得到一个 Uri 实例和你需要解决的相对路径,它就可以在任何地方工作。使用 .Net 框架的最佳扩展而不是简单的 String.Format("{0}://{1}{2}" , uri.Scheme , uri.Authority , relativeUrl.TrimStart('~') ); PS:对不起,我之前说过这是一个 MVC(我的错)。