2012-06-19 5 views
69

Что я должен сделать, чтобы сделать Server.MapPath?
У меня есть using System.Web;Нельзя использовать Server.MapPath

что еще? Когда я набираю Server, нет быстрого варианта результата (intelli-sense) для Server.

Любая помощь?

+1

Вы должны предоставить более подробную информацию. Что это за проект? Почему вы хотите запустить Server.MapPath? Является ли это проектом веб-форм и вы пишете код в подклассе «Страница» или в функции рендеринга ASPX? – Dai

+0

C# Winforms .. я хочу, чтобы он проверял наличие файлов на сервере – a1204773

ответ

206

вы можете попробовать использовать этот

System.Web.HttpContext.Current.Server.MapPath(path); 

или использовать HostingEnvironment.MapPath

System.Web.Hosting.HostingEnvironment.MapPath(path); 
+1

Они не работают .. .. Ошибка 1 Тип или имя пространства имен «HttpContext» не существует в пространстве имен «System.Web» (вам не хватает ссылки на сборку?) ... Ошибка 2 Тип или имя пространства имен «Хостинг» не существует в namespace 'System.Web' – a1204773

+0

похоже, что вы используете winforms, вы можете увидеть эту ссылку, тогда http://www.debugging.com/bug/18951 – DotNetUser

+5

«HostingEnvironment.MapPath» работал для меня –

13

Ваш проект должен ссылаться на сборку System.Web.dll. Сервер является объектом типа HttpServerUtility. Пример:

HttpContext.Current.Server.MapPath(path); 
+3

Не нашел такую ​​ссылку, я нашел только две: System.Web.ApplicationServices, System.Web.Services .... – a1204773

0

Попробуйте добавить System.Web в качестве ссылки на ваш проект.

0

Firt добавить ссылку на System.web, если у вас нет. Сделайте это в Ссылки папку.

Вы можете использовать Hosting.HostingEnvironment.MapPath(path);

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