structuremap - C# OOPS and structure map -


i need suggestion on below scenario :

i have icacheprovider interface , using structure map. icacheprovider has dbcacheprovider, memorycacheprovider, rediscacheprovider. during initializing icacheprovider during memorycacheprovider. code :

for<icacheprovider>().use(new memorycacheprovider()); 

now in controller/manager injecting :

public class searchmanager: isearchmanager { private readonly isearchrepository _searchrepository; private readonly icacheprovider _cacheprovider; public searchmanager(isearchrepository searchrepository, icacheprovider cacheprovider)         {             _searchrepository = searchrepository;             _cacheprovider = cacheprovider;         }       public async task<arrayofordersearchresponse> retrievesearchdata(searchtype searchtype)         {             //check if search data exists in cache.             var searchcachekey = searchcacheprefix + searchtype.tostring();             var searchdata = _cacheprovider.get(searchcachekey, typeof(arrayofordersearchresponse));             if (searchdata == null)             {                 //search data not in cache, call source search service data , cache it.                 searchdata = await _searchrepository.retrievesearchdata(searchtype);                   _cacheprovider.create(searchcachekey, searchdata, 60); //durationinseconds             }             return searchdata arrayofordersearchresponse;         } } 

question : if need assign dbcacheprovider or rediscacheprovider instead of memorycacheprovider _cacheprovider in searchmanager how achieve @ runtime?

thank you.


Comments

Popular posts from this blog

php - Vagrant up error - Uncaught Reflection Exception: Class DOMDocument does not exist -

vue.js - Create hooks for automated testing -

Add new key value to json node in java -