2012-11-02 7 views
8

Ich bin eine Hilfsmethode schriftlich bequem die Name eines Thread Einstellung:Warum denkt ReSharper, dass "thread.Name == null" immer falsch ist?

public static bool TrySetName(this Thread thread, string name) 
{ 
    try 
    { 
     if (thread.Name == null) 
     { 
      thread.Name = name; 
      return true; 
     } 
     return false; 
    } 
    catch (InvalidOperationException) 
    { 
     return false; 
    } 
} 

Es ist wie beabsichtigt funktioniert. ReSharper behauptet jedoch, dass die Bedingung immer falsch ist und der entsprechende Code heuristisch nicht erreichbar ist. Das ist falsch. A ist immer Null, bis eine Zeichenfolge zugewiesen wird.

Also, warum denkt ReSharper es ist? Und gibt es eine Möglichkeit, ReSharper zu sagen, dass es nicht (anders als // ReSharper disable ...) ist?

Ich benutze ReSharper 5.1.3.

+3

ich ReSharper 6 bin mit und es beschwert sich nicht. –

+0

vielleicht wegen eines Fehlers? – Vlad

Antwort

9

Dies wurde in 6+ von RS ich denke behoben. Siehe here.

Verwandte Themen