ASP.NET MVC で Ninject Singleton スコープが役立つのはどのような状況でしょうか。依存関係に変更可能なプロパティ/変数がない状況で考えていました。たとえば、オブジェクトを 1 つまたは 2 つ取り込んで新しいオブジェクトにマップするだけのマッパー クラスです。
public class AccountMapper : IAccountMapper
{
public IList<WebAccount> Map(Account[] accounts)
{
if (accounts == null)
throw new ArgumentNullException("accounts");
Account acct;
List<WebAccount> authorizedAccounts = new List<WebAccount>();
foreach (var account in accounts)
{
if (account.active == 0)
{
acct = new WebAccount (
account.active == 0 ? true : false,
account.account_number,
account.agreement_no
);
if (!string.IsNullOrEmpty(acct.AccountNumber))
acct.AccountNumber = acct.AccountNumber.Trim();
if (!string.IsNullOrWhiteSpace(acct.ArgreementNo))
acct.ArgreementNo = acct.ArgreementNo.Trim();
authorizedAccounts.Add(acct);
}
}
return authorizedAccounts;
} }