對象的條件優化配置我有以下代碼使用DI框架(Ninject)
public class MyService : IMyService
{
private readonoly IUnitOfWork _unitOfWork;
public MyService(IUnitOfWork unitOfWork)
{
_unitOfWork = unitOfWork;
}
}
//This code is used by web client
private static void RegisterServices(IKernel kernel)
{
kernel.Bind<IMyService>().To<MyService>();
kernel.Bind<IUnitOfWork>().To<UnitOfWork>().InRequestScope();
}
我有一個Web和Windows服務客戶端都使用「的MyService」級。我想在HTTP請求結束時處理「工作單元」(如果客戶端是web),其中客戶端就像一個Windows服務,我想在每次數據庫調用後處理工作單元。如何實現這一目標?我可以在MyService構造函數中添加一個額外的標誌來標識客戶端,但是當將具體類型映射到接口時,如何修改上述代碼以將硬編碼值傳遞給該參數?