2014-09-26 58 views
1

我在我的項目中使用MiniProfiler。爲了得到MiniProfiler的實例,我必須使用以下命令:將一個對象綁定到autofac中的類,並且對象可以爲null

var profiler = MiniProfiler.Current; 

這探查對象是我想AutoFac傳遞給每一個MiniProfiler類型,當我創建一個類的東西。比如我做了以下內容:

var profiler = MiniProfiler.Current; 
    builder.RegisterInstance(profiler); 

,並在我的控制器我用下面的方法:

public ListingsController(IDataFetcher DataFetcher, ILog log, MiniProfiler profiler) 
     { 
      _DataFetcher = DataFetcher; 
      _log = log; 
      _profiler = profiler; 
     } 

的事情是剖析實例可以爲空,我得到以下服務器錯誤,當我運行碼。

Value cannot be null. 

見圖片:enter image description here

需要怎麼做,這樣我可以用Miniprofiler使用Autofac?或者我正確地註冊對象到concreteType?

回答

3

嘗試註冊一個lambda,所以它總是當前的實例而不是一個特定的實例。

builder.Register(
    c => MiniProfiler.Current) 
.As<MiniProfiler>(); 
相關問題