Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从应用程序启动代码中获取根Url?_C#_Asp.net Mvc_Webactivator - Fatal编程技术网

C# 如何从应用程序启动代码中获取根Url?

C# 如何从应用程序启动代码中获取根Url?,c#,asp.net-mvc,webactivator,C#,Asp.net Mvc,Webactivator,我正在尝试使用WebActivator在mvc4应用程序中预加载输出缓存。我想我可以简单地对一些路由进行异步调用,这样就可以了。不幸的是,我在任何地方都找不到我的应用程序的根Url。。。没有当前的httpRequest 这是我想做的 [assembly: WebActivator.PostApplicationStartMethod(typeof(MaidBrigade.Web.App_Start.CacheLoader), "Load")] namespace MaidBrigade.Web.

我正在尝试使用WebActivator在mvc4应用程序中预加载输出缓存。我想我可以简单地对一些路由进行异步调用,这样就可以了。不幸的是,我在任何地方都找不到我的应用程序的根Url。。。没有当前的httpRequest

这是我想做的

[assembly: WebActivator.PostApplicationStartMethod(typeof(MaidBrigade.Web.App_Start.CacheLoader), "Load")]
namespace MaidBrigade.Web.App_Start
{
  public class CacheLoader
  {
    public static void Load()
    {
      var client = new HttpClient();
      var root = ""; // Where can a fetch this from?      
      client.GetAsync(root + "/vision/marketing/NationalReportData");

    }
  }
}
尝试使用:

var root = Url.Content("~/");
或:

还可以尝试:

string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, urlHelper.Content("~"));
如果请求不可用,请尝试:

var request = HttpContext.Current.Request

我没想到我会有一个HttpContext,但事实上,我有。谢谢!
var request = HttpContext.Current.Request