我在自定义MembershipProvider中有这个代码:
public override void Initialize(string name, System.Collections.Specialized.NameValueCollection config)
{
if (config == null)
throw new ArgumentNullException("config");
if (name == null)
name = "MyCustomMembershipProvider";
...
}
Resharper标记第二个if-Statement并告诉我,它总是评估为false。
但为什么这总是评估为假?我可以很容易地将null作为参数传递给方法。
这是一个错误还是Resharper就在这里?
PS 1:我使用Resharper 6.1
PS 2:我知道使用string.IsNullOrEmpty()无论如何都要去这里。我只是好奇。
答案 0 :(得分:15)
可能论证name
被标记为[NotNull]
。 Resharper附带了普通BCL类的合同元数据。