2010-07-16 89 views
20

我正在嘗試遵循一些在.Net 4中使用MEF的入門指南,但是當我開始設置應用程序時,我遇到困難。該指示說要做到這一點:MEF:ComposeParts missing

var catalog = new DirectoryCatalog(@".\"); 
var container = new CompositionContainer(catalog); 
container.Composeparts(this); 

,但包括在.NET 4 System.ComponentModel.Composition的版本似乎並沒有對CompositionContainer中可用的Composeparts方法,我無法找到一個很好的參考在當前系統中如何做到這一點。

下面是引用我目前正在使用: Building Composable Apps in .NET 4 with the Managed Extensibility Framework

有誰在那裏有更好的參考,我應該看什麼?

回答

26

CompositionContainer確實有一個ComposeParts方法,作爲extension method

請參閱this參考一些工作代碼。

+3

爲什麼哦爲什麼哦爲什麼它是一種擴展方法!謝謝你的回答:-) – ColinE 2011-09-30 08:15:07

22

有一點需要注意,如果您之前沒有使用過擴展方法。你必須有使用聲明。在這種情況下:

using System.ComponentModel.Composition; 

爲問題中的代碼工作。沒有using語句,intellisense和編譯器將不允許使用擴展方法。

+0

謝謝。你在Hackathon爲我節省了寶貴的時間。 – BSalita 2013-03-28 08:38:13