|
|
Отладка в ASP.NET - Page-level Tracing
Отладка в ASP.NET - Page-level Tracing
Отладка приложения - неотъемлемая часть любого
мало-мальски серьезного программного решения, однако ASP не имело
встроенных средств отладки, что в некой мере затрудняло разработку сложных web
приложений. В ASP.NET ситуация поменялась к лучшему и теперь нам
стали доступны интегрированные средства отладки программ.
Перед тем как обсуждать новые возможности, вспомним стары методы отладки.
Чаще всего применялся следующий подход - по всему тесту программы помещались
строчки типа
Response.Write("Function MyFunction was called with Parameter1 = "& Par1) |
Такой подход позволял, пусть и не очень удобно,
контролировать жизненный цикл программы и прослеживать значения необходимых
переменных. Несомненно, что в релиз версии все отладочные строки должны были
быть удалены. Эта, казалось бы тривиальная задача, на самом деле представляет
довольно трудную работу в больших документах. Упростить подобную отладку и
добавить новые возможности должна та часть ASP.NET trace функциональности,
которая называется, примерно, Отладка уровня страницы, а полное английское
название - Page-level Tracing. При использовании этого метода используется
отладочная функциональность. инкапсулированная в классе TraceContext. С помощью
методов Write и Warn Вы можете вставлять отладочные строки в любом
месте программы и они будут
выведены браузером после основного текста в виде
специальной таблицы вместе с другой информацией. Приведем пример:
<%@ Page Language="C#" Trace="True" % >
<html>
<script runat="server">
public void Page_Load(Object sender, EventArgs E){
Trace.Write("My Category","Load Method detected")
}
</script>
<body>
<% Context.Trace.Warn("SomeTrace","TraceMessage")%>
<P>It is the page output</p>
<form runat="server">
<span id="message1" runat="server" />
</form>
</body>
</html> |
Как результат Вы получите следующий вывод:
Как видно из таблицы, отличие метода Warn только в том, что его
сообщения выделяются красным. После того, как страница полностью отлажена
и необходимость в вышеприведенной информации отпадает, Вам не придется
удалять строки отладки из текста. Достаточно только поменять директивы в
начале страницы, изменив значение параметра Trace на
False:
< %@ Page Language="C#" Trace="False" % > |
Теперь на экране
останется только тот вывод, который предназначается пользователю. В принципе,
существуют возможности для настройки таблицы, например, сортировка по категории
для этого надо добавить параметр TraceMode:
< %@ Page Language="C#" Trace="False" TraceMode = "SortByCategory"%> |
Другой вариант сортировки, предоставляемый программисту - по времени (Значение SortByTime
параметра TraceMode).
В следующей части статьи я расскажу о других возможностях отладки, которые все вмести
называются Application-level Tracing.
|