Compare string to null - Why does Resharper think

2020-06-12 03:07发布

I have this code in my custom 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 marks the second if-Statement and tells me, it would always evaluate to false.

resharper message

But why would this always evaluate to false? I could easily pass null to the method as a parameter.

Is this a bug or is Resharper right here?

PS 1: I use Resharper 6.1
PS 2: I know using string.IsNullOrEmpty() would be the way to go here anyway. I'm just curious.

1条回答
Explosion°爆炸
2楼-- · 2020-06-12 03:39

Probably, the argument name is marked as [NotNull]. Resharper ships with contract metadata for common BCL classes.

查看更多
登录 后发表回答