2013-02-24 10 views
6

Normalnie jeśli miałbym to:Jak niech Code Analysis podnieść, że argument ten został zatwierdzony w nazwie metody

public string Foo(string text) 
{ 
    return text.Substring(3); 
} 

bym dostał CA1062: Validate arguments of public methods z analizy kodu. Byłoby zostały ustalone poprzez modyfikację kodu jako takie:

public string Foo(string text) 
{ 
    if (text == null) 
     throw new ArgumentNullException("text"); 
    else if (string.IsNullEmptyOrWhiteSpace(text) 
     throw new ArgumentException("May not be empty or white space", "text") 
    else if (text.Length < 3) 
     throw new ArgumentException("Must be at least 3 characters long", "text"); 
    return text.Substring(3); 
} 

Ale teraz chcę użyć innego środka robi to Walidacja:

public string Foo(string text) 
{ 
    Validator.WithArgument(text, "text").NotNullEmptyOrWhitespace().OfMinLength(3); 
    return text.Substring(3); 
} 

ponieważ metoda sprawdza argument reguła analizy kodu jest spełnione, ale nadal otrzymujesz ostrzeżenie o wartości CA1062. Czy istnieje sposób na zahamowanie reguły Code Analysis dla takich przypadków bez ręcznego ich wyłączania za każdym razem lub wyłączania tej konkretnej reguły analizy kodu?

Odpowiedz

Powiązane problemy