Nasıl yapılır: Uygulama Koduna İzleme Deyimleri Ekleme
Not
Bu makale .NET Framework'e özgüdür. .NET 6 ve sonraki sürümleri de dahil olmak üzere daha yeni .NET uygulamaları için geçerli değildir.
İzleme için en sık kullanılan yöntemler dinleyicilere çıkış yazma yöntemleridir: Write, WriteIf, WriteLine, WriteLineIf, Assert ve Fail. Bu yöntemler iki kategoriye ayrılabilir: Write, WriteLine ve Fail all emit output unconditionally, WriteIf, WriteLineIf ve Assert ise bir Boole koşulunu test eder ve koşulun değerine göre yazmaz veya yazmaz. Koşul ise true
WriteIf ve WriteLineIf çıkış, koşul ise false
Assert çıkış yayar.
İzleme ve hata ayıklama stratejinizi tasarlarken çıkışın nasıl görünmesini istediğinizi ele almanız gerekir. İlişkisiz bilgilerle dolu birden çok Write deyimi, okunması zor bir günlük oluşturur. Öte yandan, ilişkili deyimleri ayrı satırlara koymak için WriteLine kullanmak, hangi bilgilerin birbirine ait olduğunu ayırt etmek zor olabilir. Genel olarak, tek bir bilgilendirici ileti oluşturmak için birden çok kaynaktan gelen bilgileri birleştirmek istediğinizde birden çok Write deyimi kullanın ve tek, eksiksiz bir ileti oluşturmak istediğinizde WriteLine deyimini kullanın.
Eksiksiz bir satır yazmak için
Arama WriteLine veya WriteLineIf yöntemi.
Bu yöntemin döndürdüğü iletinin sonuna satır başı eklenir; böylece Write, WriteIf, WriteLine veya WriteLineIf tarafından döndürülen sonraki ileti aşağıdaki satırda başlar:
Dim errorFlag As Boolean = False Trace.WriteLine("Error in AppendData procedure.") Trace.WriteLineIf(errorFlag, "Error in AppendData procedure.")
bool errorFlag = false; System.Diagnostics.Trace.WriteLine ("Error in AppendData procedure."); System.Diagnostics.Trace.WriteLineIf(errorFlag, "Error in AppendData procedure.");
Kısmi bir satır yazmak için
Arama Write veya WriteIf yöntemi.
Write, WriteIf, WriteLine veya WriteLineIf tarafından oluşturulan sonraki ileti, Write veya WriteIf deyimi tarafından oluşturulan iletiyle aynı satırda başlar:
Dim errorFlag As Boolean = False Trace.WriteIf(errorFlag, "Error in AppendData procedure.") Debug.WriteIf(errorFlag, "Transaction abandoned.") Trace.Write("Invalid value for data request")
bool errorFlag = false; System.Diagnostics.Trace.WriteIf(errorFlag, "Error in AppendData procedure."); System.Diagnostics.Debug.WriteIf(errorFlag, "Transaction abandoned."); Trace.Write("Invalid value for data request");
Bir yöntemi yürütmeden önce veya sonra belirli koşulların mevcut olduğunu doğrulamak için
yöntemini çağırın Assert .
Dim i As Integer = 4 Trace.Assert(i = 5, "i is not equal to 5.")
int i = 4; System.Diagnostics.Trace.Assert(i == 5, "i is not equal to 5.");
Not
Assert'ı hem izleme hem de hata ayıklama ile kullanabilirsiniz. Bu örnek, çağrı yığınını Dinleyiciler koleksiyonundaki herhangi bir dinleyiciye aktarır. Daha fazla bilgi için bkz . Yönetilen Koddaki Onaylar ve Debug.Assert.