C# 如何在.NETMVC中获取具有应用程序名称的url?

C# 如何在.NETMVC中获取具有应用程序名称的url?,c#,asp.net-mvc,url,iis,C#,Asp.net Mvc,Url,Iis,有没有办法在我的网站的IIS中用应用程序名获取主机地址?为了澄清我的问题,这里有几个我想要的例子: http://example.com/constructionSite/myController/myAction?blah=blahh http://example.com/tr.Implementation/myOtherController/myAction?blah=blahh http://example.com/anotherApplication/myController/myAct

有没有办法在我的网站的IIS中用应用程序名获取主机地址?为了澄清我的问题,这里有几个我想要的例子:

http://example.com/constructionSite/myController/myAction?blah=blahh
http://example.com/tr.Implementation/myOtherController/myAction?blah=blahh
http://example.com/anotherApplication/myController/myAction?blah=blahh
http://example.com/myOtherOtherController/myAction?blah=blahh
在我的IIS中,我有一些应用程序,如上面的constructionSite、tr.Implementation和另一个应用程序myController。我需要在IIS上获取带有应用程序名称的URL,换句话说,直到myController/。。。。。。而且myController并不总是同一个控制器,所以我不能使用.IndexOf方法

我尝试过使用System.Web.HttpContext.Current.Request.Url.AbsoluteUri、System.Web.HttpContext.Current.Request.Url.AbsolutePath这些路径,但我不满意


获取带有应用程序名称的url的适当方法是什么?

您可以尝试使用url.Content~

@string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Content("~"))

它们是否在同一个asp.net应用程序中?如果是,请使用管线和管线值。必读:。它们是不同的应用程序。我认为问题是:如何获取应用程序名称,而不是如何格式化url。我认为关键是获取具有基本虚拟路径的url。无论如何,主要部分是Url.Content~,它返回应用程序的虚拟路径。