2016-12-01 1 views
0

Wir bekommen Fehlalarme während S2538 unter Verwendung der Regel im folgenden CodeFalsch mit Regel S2538 positiv in verschachtelten while-Schalter-Schalterkonstruktion

EventLogLevel[] eventLevels = null; 
    bool reachedEnd = false; 
    while(!reachedEnd && jsonReader.Read()) 
    { 
    switch(jsonReader.TokenType) 
    { 
     case JsonToken.PropertyName: 
     string propertyName = jsonReader.Value.ToString(); 

     switch(propertyName) 
     { 
      case nameof(EventLevels): 
      eventLevels = EventSettingsJson.ParseEventLogLevelsArray(nameof(EventLevels), jsonReader); 
      break; 
      default: 
      throw new JsonParserException($"Invalid property: {propertyName}"); 
     } 

     break; 
     case JsonToken.EndObject: 
     reachedEnd = true; 
     break; 
     default: 
     throw new JsonParserException($"Unexpected Token Type while parsing json properties. TokenType: {jsonReader.TokenType}"); 
    } 
    } 

    if(eventLevels != null) 
    { 
    return new EventLogCollectionSettings(eventLogName, eventLevels); 
    } 

Die letzten if (eventLevels != null) die Warnung mit der Meldung zeigt:

[Ändern Sie diese Bedingung so, dass sie nicht immer "false"] auswertet.

Ich konnte keinen Testfall erstellen, um es zu reproduzieren.

Antwort

Verwandte Themen