[EDIT]
, . , , ( ) TraceListener, Trace.WriteLine Debug.WriteLine. , , , , TraceSources Trace.WriteLine Debug.WriteLine. , , , TraceListener Write WriteLine , - Trace.WriteLine vs Debug.WriteLine.
, , TraceListener Write WriteLine. , , , , TraceSources .
, , , Trace.WriteLine Debug.WriteLine. , TraceListener, , , Trace.WriteLine Debug.WriteLine. - :
public void WriteLine(string msg)
{
if (WasWrittenFromTrace)
{
WriteToOutput("TRACE: {0}", msg);
}
else
if (WasWrittenFromDebug)
{
WriteToOutput("DEBUG: {0}", msg);
}
}
[END EDIT]
. System.Diagnostics.
, System.Diagnostics, TraceSources, Trace.WriteLine Debug.WriteLine.
, , :
public void MyFunction(int x, int y)
{
Trace.WriteLine("Entering MyFunction. x = {0}, y = {1}", x, y);
int product = x * y;
Debug.WriteLine("product = {0}", product);
Trace.WriteLine("Exiting MyFunction");
}
, -, , Trace TraceListener Debug, TraceListener. TraceListener (, ), , Write/WriteLine Trace.Write Debug.Write. , .
(, ?
TraceSources, / , , TraceSources TraceListener TraceListener ( TraceSources TraceListeners).
, TraceSources, :
public class MyClass
{
private static readonly TraceSource ts = new TraceSource("MyClass");
public void MyMethod(int x, int y)
{
ts.TraceEvent(TraceEventType.Information, 0, "Entering MyMethod. x = {0}, y = {1}", x, y);
int product = x * y;
ts.TraceEvent(TraceEventType.Debug, 0, "Product = {0}", product);
ts.TraceEvent(TraceEventType.Information, 0, "Exiting MyMethod.");
}
}
TraceSource ?
app.config TraceSource MyClass . "" , "" "". "", . , "", .
app.config "MyClass" TraceListeners. TraceSources ( "YourClass", "HisClass" ), TraceListener, TraceListener .
app.config / , "MyClass" , , TraceListeners. TraceListener , "" , , "".
TraceSources , . . . Ukadc.Diagnostics, . Essential.Diagnostics - , System.Diagnostics, System.Diagnostics. MSDN TraceSources, TraceListeners.
, , TraceSources, Trace. * Debug. *, / .
!