質問を明確にするために、次の疑似コードを使用します (使用されるクラスは重要ではありません)。
var client = new SmtpClient();
client.Credentials = ...;
今、このコードを使用したい場合。どうやってそれを使用する方法を知っていますか。次のようにプロパティ値を設定しようとすることができます。
client.Credentials.User = "MyUsername";
デフォルトの資格情報オブジェクトが割り当てられていないため、 NullReferenceException が発生するはずです。または、次のように使用できます。
client.Credentials = new Credentials("MyUsername",...);
しかし、プロパティを初期化する正しい方法は、次のように DefaultNetworkCredentials を自分で設定することです。
client.Credentials = CredentialCache.DefaultNetworkCredentials;
ドキュメント (存在する場合) を調べずに、設計時にオブジェクト プロパティに既定値があるかどうかを知るにはどうすればよいですか?
オブジェクト プロパティのベスト プラクティス/設計ガイドラインは何ですか? プロパティの既定値は常に存在する必要がありますか?