でコンストラクタを組み合わせることができます私は、次のコードを持っている:私はC#の
public AccountService(ModelStateDictionary modelStateDictionary, string dataSourceID)
{
this._modelState = modelStateDictionary;
this._accountRepository = StorageHelper.GetTable<Account>(dataSourceID);
this._productRepository = StorageHelper.GetTable<Product>(dataSourceID);
}
public AccountService(string dataSourceID)
{
this._accountRepository = StorageHelper.GetTable<Account>(dataSourceID);
this._productRepository = StorageHelper.GetTable<Product>(dataSourceID);
}
を私はそれぞれがStorageHelper呼び出しを行う必要はありませんコンストラクタを簡素化することができますいくつかの方法はありますか?
また、これを指定する必要があります。 ?
確認するだけです。どのような "この"言葉を削除できたらいいですか? –
あなたが求めているものを完全にはっきりさせることはできませんが、 'this._'コードについて質問している場合は、それらのコードをすべて削除することができます。例えば、 'this._accountRepository'は' _accountRepository'と書くこともできます。私が参照していた 'this'は、コンストラクタ宣言と同じ行にあります(右にスクロールすると表示されます)。 –
@リチャードM:まあまあです。同じ名前の変数を渡している場合を除いて、 'this.'はコンテキスト内でほぼ常に推論できます。読みやすさ(より明示的)を挙げて、好きな人もいます。他の人は同じ理由(冗長な情報)のためにそれを嫌う。 –