Я использовал код из здесь и я получаю следующую ошибку:
Не могу использовать HttpContext.Current.Server.MapPath ()
В Visual Studio 2008 помогает ли ContextMenuEntry «Решить», когда у вас отсутствуют ссылки?
Я уже обнаружил, что HttpContext
не является членом System.Web
в моей IDE.
Согласно Справке> Информация, я использую .NET 3.5 SP1.
Как мне это запустить?
Как вы обычно реагируете в этой ситуации? Какие вещи вы ищете в msdn.com?
Вы можете посмотреть в документации класс HttpContext, и там сказано, что он находится в пространстве имен System.Web
, в библиотека System.Web.dll
.
Таким образом, чтобы использовать его, вам нужна ссылка на библиотеку System.Web.dll
, и вам нужен либо оператор using System.Web;
, либо используйте полностью определенный имя System.Web.HttpContext.Current.Server.MapPath
.
Однако вы уверены, что хотите использовать метод MapPath
? Метод получает физический путь веб-ссылки к файлу. Если путь к вашему CSV-файлу является веб-ссылкой, например "/data/items.csv"
, то вы хотите использовать метод MapPath
, но если у вас есть физический путь например, "C:\mydata\items.csv"
, тогда вы не хотите его конвертировать.
Кроме того, MapPath
работает, только если вы действительно находитесь в веб-приложении, где есть контекст HTTP.
Попробуйте добавить ссылку на System.Web
в вашем проекте.
HttpContext
является членом System.Web
.
http://msdn.microsoft.com/en-us/library/system.web.httpcontext.aspx
Тимви прав, но для полноты. Нет, в VS нет встроенной возможности «Решить», однако эта функция была частично добавлена некоторыми надстройками. Например, Resharper добавит возможность добавить ссылку и использовать ее при необходимости, но она должна быть указана ранее в решении, поэтому она не решает проблему первоначального поиска.