TraceFilter.ShouldTrace Yöntem

Tanım

Türetilmiş bir sınıfta geçersiz kılındığında, izleme dinleyicisinin olayı izlemesi gerekip gerekmediğini belirler.

public:
 abstract bool ShouldTrace(System::Diagnostics::TraceEventCache ^ cache, System::String ^ source, System::Diagnostics::TraceEventType eventType, int id, System::String ^ formatOrMessage, cli::array <System::Object ^> ^ args, System::Object ^ data1, cli::array <System::Object ^> ^ data);
public abstract bool ShouldTrace(System.Diagnostics.TraceEventCache? cache, string source, System.Diagnostics.TraceEventType eventType, int id, string? formatOrMessage, object?[]? args, object? data1, object?[]? data);
public abstract bool ShouldTrace(System.Diagnostics.TraceEventCache cache, string source, System.Diagnostics.TraceEventType eventType, int id, string formatOrMessage, object[] args, object data1, object[] data);
abstract member ShouldTrace : System.Diagnostics.TraceEventCache * string * System.Diagnostics.TraceEventType * int * string * obj[] * obj * obj[] -> bool
Public MustOverride Function ShouldTrace (cache As TraceEventCache, source As String, eventType As TraceEventType, id As Integer, formatOrMessage As String, args As Object(), data1 As Object, data As Object()) As Boolean

Parametreler

cache
TraceEventCache

TraceEventCache İzleme olayının bilgilerini içeren.

source
String

Kaynağın adı.

eventType
TraceEventType

İzlemeye TraceEventType neden olan olay türünü belirten değerlerden biri.

id
Int32

İzleme tanımlayıcı numarası.

formatOrMessage
String

parametresi tarafından args belirtilen bir bağımsız değişken dizisi yazmak için kullanılacak biçim veya yazacak bir ileti.

args
Object[]

Bağımsız değişken nesneleri dizisi.

data1
Object

İzleme veri nesnesi.

data
Object[]

İzleme veri nesneleri dizisi.

Döndürülenler

true belirtilen olayı izlemek için; aksi takdirde , false.

Örnekler

Aşağıdaki kod örneği, olayın izleme olay türü değerine eşit olduğunda izlemenin gerçekleşmesi gerektiğini belirtmek için yönteminin nasıl geçersiz kılınması ShouldTrace gerektiğini TraceEventType.Errorgösterir.

public class ErrorFilter : TraceFilter
{
    override public bool ShouldTrace(TraceEventCache cache, string source,
        TraceEventType eventType, int id, string formatOrMessage,
        object[] args, object data, object[] dataArray)
    {
        return eventType == TraceEventType.Error;
    }
}
Public Class ErrorFilter
    Inherits TraceFilter

    Public Overrides Function ShouldTrace ( cache As TraceEventCache, _
                source As String, eventType As TraceEventType, _
                id As Integer, formatOrMessage As String, _
                args As Object(), data As Object, _
                dataArray As Object() ) As Boolean
        If eventType = TraceEventType.Error Then
            Return True
        Else
            Return False
        End If
    End Function
End Class

Uygulayanlara Notlar

Geçirilen parametreler tarafından belirtilen olayın izlenmesi gerekiyorsa bu yöntemin uygulamaları döndürülmelidir true . Aksi takdirde yöntemi döndürmelidir false. Örneğin, yalnızca hata olaylarının dinleyiciye geçirilmesine izin veren bir filtre parametresini eventType incelemeli ve izleme olay türü düzeyi true veya daha büyükse döndürmelidirError; aksi takdirde döndürmelidirfalse.

yönteminin uygulamaları şu parametrelerde işlenecek null şekilde hazırlanmalıdır: args, data1, data, formatOrMessageve cache. Parametre değeri ise nullparametresi olayın bir parçası değildir. Örneğin parametresi ise argsnull, olayın bağımsız değişkeni olmadığı anlamına gelir. data parametresi isenull, bir veri nesnesi vardır veya hiç veri nesnesi yoktur. Bir veri nesnesi varsa, parametresinde data1 bulunur. Tek bir veri nesnesi ile veri nesneleri dizisi arasındaki ayrımın nedeni performanstır. Normalde olduğu gibi yalnızca bir nesne izlendiğinde nesne dizisi oluşturmak için bir neden yoktur. data parametresi değilse nullparametresi data1 de olmamalıdırnull.

Parametresinin source boş bir dize ("") olmaması ve olmaması null garanti edilir.

yönteminin uygulamaları isteğe bağlı olarak aşağıdaki özel durumları oluşturabilir:

Şunlara uygulanır