2014-01-26 2 views
0

У меня есть приложение ASP.NET MVC 4.HttpContext.Current null внутри FileSystemWatcher

Также у меня есть XML-файл, расположенный в корне моего приложения.

Когда администратор меняет этот файл, я хочу, чтобы аппликатор узнал об этом и прочитал новые значения.

... 
FileSystemWatcher Watcher = new FileSystemWatcher(); 
Watcher.Changed += new FileSystemEventHandler(OnChanged); 
... 

private void OnChanged(object source, FileSystemEventArgs e) { 
    var path = HttpContext.Current.Server.MapPath("~/")) 
} 

Каждый раз, когда HttpContext.Current представляется равным нулю. Как получить корневую папку моего приложения, если это не работает?

ответ

0

Как получить корневую папку моего приложения, если это не сработает?

AppDomain.CurrentDomain.BaseDirectory 
0

И еще одна альтернатива; HostingEnvironment.MapPath. Что делает Server.MapPath, без активного HttpContext.

См What is the difference between Server.MapPath and HostingEnvironment.MapPath?

в действительности, единственное различие заключается в том, что вы имеете право передать нуль на Server.MapPath(), но не HostingEnvironment.MapPath()

Смежные вопросы