0
的高速緩存的實現我有一個服務接口,ICustomerService,並經兩種實現:城堡溫莎 - 註冊和解析緩存和相同的接口
public class CustomerService : ICustomerService
{
// stuff
}
public class CachedCustomerService : ICustomerService
{
public CachedCustomerService(CustomerService service) { }
}
緩存服務的話,只是緩存和代表正常服務。
對於註冊我已將ICustomerService解析爲CachedCustomerService,然後CustomerService僅針對其自己的類型註冊。
這工作正常。
我想知道的是,如果我可以使CachedCustomerService需要一個接口,而不是具體的CustomerService。原因是我們可能最終得到兩種類型的CustomerService,並且我想避免(如果可能)每個特定的緩存版本。
所以CachedCustomerService的構造函數將變爲:
public class CachedCustomerService : ICustomerService
{
// notice the ICustomerService
public CachedCustomerService(ICustomerService service) { }
}
我有過登記總量控制,但分辨率由asp.net的MVC的碗完成。
謝謝!