Использование Сервера. MapPath во внешних Классах C# в ASP.NET

Любой вид диагностического вывода - особенно при отказе очень важен. Если тест перестал работать, Вы не хотите всегда должными быть повторно выполнять тест под отладчиком для наблюдения то, что произошло - в выводе должен быть некоторый cludes.

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

Наконец, если Вы используете случайные семена для какого-либо из тестов, выписывают семя к файлу журнала так, чтобы тест мог быть воспроизведен при необходимости.

127
задан Adrian Carneiro 27 July 2011 в 19:22
поделиться

3 ответа

Класс ServerUtility доступен как экземпляр в вашем HttpContext . Если вы находитесь в среде, где, как вы знаете, он будет выполняться внутри конвейера ASP.Net, вы можете использовать

HttpContext.Current.Server.MapPath()

. Однако вам придется импортировать System.Web .

293
ответ дан 24 November 2019 в 00:42
поделиться

Не могли бы вы просто добавить ссылку на System.Web , а затем использовать Server.MapPath ?

Изменить: в настоящее время я Рекомендую использовать HostingEnvironment.MapPath Метод :

Это статический метод в сборке System.Web , который сопоставляет виртуальный путь с физическим путем на сервере. Это не требует ссылки на HttpContext .

8
ответ дан 24 November 2019 в 00:42
поделиться
System.Reflection.Assembly.GetAssembly(type).Location

ЕСЛИ файл, который вы пытаетесь получить, является местом сборки для тип. Но если файлы указаны относительно местоположения сборки, вы можете использовать это с пространством имен System.IO , чтобы получить точный путь к файлу.

4
ответ дан 24 November 2019 в 00:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: