2011-06-23 4 views
1

Я работаю над классом библиотеки C#, который используется приложением ASP.NET 4.0 Web Forms. В моем классе, я пытаюсь получить доступ к объекту HttpRequest.Application, как описано здесь:VS 2010 Intellisense Issue

http://msdn.microsoft.com/en-us/library/system.web.httprequest.applicationpath.aspx

Эта документация говорит, что находится в пространстве имен System.Web, но даже когда я добавить ссылку в моей библиотеке проекта , он до сих пор не доступен мне.

Единственный способ, которым я могу получить в собственность ApplicationPath является использование:

HttpContext.Current.Request.ApplicationPath; 

Что происходит?

ответ

3

ApplicationPath не является статическим свойством на HttpRequest, поэтому вам необходимо получить к нему доступ, используя экземпляр HttpContext.Current.Request. Если вы не хотите использовать HttpContext.Current.Request, вы всегда можете передать объект HttpRequest в свою библиотеку классов из веб-форм ASP.NET.

Например (из вашей Page_Load):

protected void Page_Load(object sender, EventArgs e) 
{ 
    var myClass = new MyClass(); 
    myClass.MyMethod(this.Request); 
} 
+0

Идеальный ответ, спасибо :) – IrishChieftain

+0

@Irish: Пожалуйста, отметьте rsbarro как ответ. – Sung

+0

@ Просто нужно было ждать временного ограничения SO ... – IrishChieftain

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