DIコンテナとStructureMapを使用してASP.NetMVC3アプリケーションを作成しました。すべてがコントローラーメソッドで機能します。しかし、global.asaxメソッドに対してどのようにすればよいですか?
ここでは、依存関係リゾルバー、global.ascxのApplication_Startを設定します
protected void Application_Start()
{
DependencyResolver.SetResolver(new StructureMapDependencyResolver(container));
LoadApplicationMetaData(?,?,?);
}
private void LoadApplicationMetaData(IMetaDataService metaService, ITenantService tenantService, ICacheStorage store)
{
store.Add("TenantMeta", tenantService.GetAllTenants());
}
public class TenantService : ITenantService
{
private readonly ITenantRepository TenantRepsitory;
public TenantService(ITenantRepository _tenantRepository)
{
TenantRepsitory = _tenantRepository;
}
}
この下の行では、メソッド呼び出しのために緩く結合する方法を教えてください。
**LoadApplicationMetaData(?,?,?); what should be passed**
注:TenantServiceクラスはITenantRepositoryを期待しています