Я хотел бы записать функцию помощника, которые создают сообщение об исключении для записи в журнал. Код похож:
если (IsWebApp)
{
используйте HttpContext для получения Пути Запроса и RawUrl}
еще
{
//еще это winform/console
Используйте блок для получения выполняющегося пути.
}
Используйте класс HttpRuntime :
if (!String.IsNullOrEmpty(HttpRuntime.AppDomainAppVirtualPath))
//ASP.Net
else
//Non-ASP.Net
Просто проверьте, есть ли какой-нибудь объект, который существует только в веб-приложении. , например HttpRuntime.AppVirtualPath
, предложенный SLaks.
Если это веб-приложение, вы все равно захотите проверить, является ли HttpContext.Current
пустым. Если исключение возникает в коде, который не запускается из-за запроса, у него нет контекста. Например, событие Session_OnEnd запускается, когда сеанс сервера удаляется, поэтому у него нет контекста.
Вы можете проверить, является ли HttpContext.Current! = Null.
Как насчет
If (Not System.Web.HttpContext.Current Is Nothing) Then
End If
или
if(System.Web.HttpContext.Current != null){
}