2016-07-07 9 views
1

オーチャード・キャッシング・デザイン:Autofacからの移行方法解決方法?

public interface ICacheManager 
{ 
    ICache<TKey, TResult> GetCache<TKey, TResult>(); 
} 

class DefaultCacheManager : ICacheManager 
{ 
    public DefaultCacheManager(Type component, ICacheHolder cacheHolder) 
    { 
     //do something 
    } 
    public ICache<TKey, TResult> GetCache<TKey, TResult>() 
    { 
     //do somthing 
    } 
} 

Autofacコード:

//1.register 
builder.RegisterType<DefaultCacheManager>().As<ICacheManager>().SingleInstance(); 

//2.reslove 
// the parameter is dynamic 
var parameter = new TypedParameter(do somthing...);  
container.Resolve(parameter); //resolve by parameter 

質問:

Autofacは方法があります。

object Resolve(Type serviceType, params Parameter[] parameters); 

を私は時のparamsを解決cant'find dryioc、どのようにdryiocで行うのですか?

+0

ようこそ!あなたの質問を編集して、コードサンプルを適切にレンダリングできるようにフォーマットしました。フォーマットの詳細については、編集ヘルプを参照してください。特定の問題を特定するために必要な詳細を追加するには、編集してください。がんばろう! – Wtower

答えて

1

短い答え:スタックオーバーフローへ

container.Resolve<Func<Type, ICacheManager>>()(my parameter ...); 
+0

これは大丈夫です、ありがとう! – try

+0

私はそれをここに残します...多分それは他人が状態を追跡するのに役立ちます:https://bitbucket.org/dadhi/dryioc/issues/304/add-option-to-pass-values-for-some – Maxim