12

カスタム 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 は 2 番目の if-Statement をマークし、常に false と評価されると教えてくれます。

resharper メッセージ

しかし、これが常に false と評価されるのはなぜでしょうか? null をパラメーターとしてメソッドに簡単に渡すことができました。

これはバグですか、それとも Resharper はここにありますか?

PS 1: Resharper 6.1 を使用します。
PS 2: string.IsNullOrEmpty() を使用することがとにかくここに行く方法であることを知っています。私はただ興味があります。

4

1 に答える 1

15

おそらく、引数nameはとしてマークされてい[NotNull]ます。Resharperには、一般的なBCLクラスのコントラクトメタデータが付属しています。

于 2012-07-17T19:45:27.827 に答える