为什么ReSharper认为“thread.Name == null”总是假的?
我正在编写一个帮助方法来方便地设置一个Thread
的Name
:
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; } }
它按预期工作。 然而,ReSharper声称条件总是错误的,相应的代码是启发式无法访问的。 那是错的。 在分配字符串之前, Thread.Name
始终为null。
那么,为什么ReSharper认为它是? 有没有办法告诉ReSharper它不是(除了// ReSharper disable ...
)?
我正在使用ReSharper 5.1.3。
我认为这已经在6+ RS中修复了。 看到这里 。
它似乎是R#中的一个错误,在v6中已修复。
见: http : //devnet.jetbrains.net/message/5366898