2013-02-24 5 views
6

Normalerweise in aufgerufenen Methode validiert wurde, wenn ich dies hätte:Wie Code-Analyse abholen zu lassen, dass ein Argument

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

ich hätte ein CA1062: Validate arguments of public methods von Code-Analyse erhalten.

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); 
} 

Aber jetzt will ich ein anderes Mittel verwenden, der diese Validierung zu tun: Es wäre durch Modifizierung des Codes als solche fest

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

da das Verfahren das Argument der Regel die Code-Analyse bestätigt ist zufrieden, aber Sie erhalten immer noch eine CA1062 Warnung. Gibt es eine Möglichkeit, die Code Analysis-Regel für solche Fälle zu unterdrücken, ohne sie jedes Mal manuell zu unterdrücken oder diese spezifische Code Analysis-Regel zu deaktivieren?

Antwort