2009-04-17 2 views
2

Мы пытаемся отладить некоторые коды веб-сервисов, которые мы запускаем на C# в IIS. Я новичок в программировании Windows и понятия не имею, как просматривать вывод на консоль. У нас есть несколько операторов записи в коде, но я не могу понять, как просматривать консоль, пока эта вещь работает. Помогите?Вывод на консоль в C# в IIS

ответ

4

Вы хотите, чтобы взглянуть на ASP.NET трассировку

здесь удобная ссылка, чтобы вы начали: http://www.asp101.com/articles/robert/tracing/default.asp

вы можете включить приложение широкий трассировки, если вы поместите его в вашем веб .config, то у вас будет доступ к вашему trace.axd

<trace enabled="true" 
    localOnly="false" 
    pageOutput="false" 
    requestLimit="500" 
    traceMode="SortByTime" 
/> 
+1

Я нашел это полезным. – MaxGeek

+0

Ничего себе - получите ответ даже после кражи ответа от кого-то еще! – RSolberg

1

Если вы используете asp.net, то trace.axd должен содержать инструкции трассировки (пока он включен).

1

Вы не собираетесь получать консоль для IIS. CLOSEST вы придете, это Debug.WriteLine с отладчиком, прикрепленным или использующим трассировку страницы. Рекомендация должна заключаться в использовании фреймворка регистрации, который будет записывать в отладчик (при подключении), а также файл и, возможно, журнал событий (все настроены через ваши слушатели).

Некоторые из них - log4net и NLog.

+0

Поскольку .net поставляется со встроенной в лесозаготовительной я всегда задаюсь вопросом, почему люди до сих пор используют другие пакеты протоколирования ... –

+0

потому что трассировка не работает, если в производственной среде. и w/shared components, вы не хотите привязываться к ведению веб-журнала, если тот же код будет использоваться в Интернете, а также приложение или служба Windows. –

+0

Trace in System.Diagnostics не работает в производстве? Я уверен, что они это сделают, пока это разрешено. Встроенные переключатели трассировки, источники трассировки, фильтры и прослушиватели ... –

7

Я нашел функцию Trace чрезвычайно полезной. Попасть туда можно, перейдя на: http://mysiteurl/trace.axd

В вашем web.config, поместите следующее в System.Web тег:

<trace enabled="true" 
     localOnly="false" 
     pageOutput="false" 
     requestLimit="500" 
     traceMode="SortByTime" 
/> 

Теперь из кода позади, вы можете привнести некоторые протоколирование делая :

HttpContext.Current.Trace.Warn("I Made It Here!"); 
Смежные вопросы