すべてのコントローラーで CurrentSettings および CurrentUser クラスが必要なプロジェクトがあります。これらを取得するために静的クラスを使用していましたが、静的クラスを使用するのは悪いため、誰かがラッパークラスを提案しました。
私の問題は、すべてのコントローラーでこれを行う必要があることです:
#region Fields
private readonly ProfileService service;
private readonly Profile currentUser;
private readonly Settings currentSettings;
#endregion
#region Constructors
public _UsersController()
{
var companyWrapper = new CompanyWrapper();
var profileWrapper = new ProfileWrapper();
var settingsWrapper = new SettingsWrapper();
var companyId = companyWrapper.CurrentCompanyId();
service = new ProfileService(companyId);
currentUser = profileWrapper.CurrentUser();
currentSettings = settingsWrapper.CurrentSiteSettings();
}
#endregion
悪夢だと思います。確かに、これを行うよりクリーンな方法があります。誰かが私を正しい方向に向けることができれば、私は感謝します.
PS: このプロジェクト内のほとんどすべてにリポジトリ/サービス デザイン パターンを使用します。
乾杯、/r3plica