2014-12-03 56 views
0

源類,如果我有以下出口CompositionContainer中:我怎樣才能從導出值

Class A 
    [Export(typeof(IFOOExport))] 
    public IFOOExport ExportedFunctions_FULL = new FunctionsExport 
    { 
     Sub = String.Empty; 

    }; 

Class B 
    [Export(typeof(IFOOExport))] 
    public IFOOExport ExportedFunctions_EMPTY = new FunctionsExport 
    { 
     Sub = String.Empty; 

    }; 

然後我得到的名單:

var exp_list= CompositionContainer.GetExportedValues<IFOOExport>(); 

我應該在列表中的兩個元素,我的問題是:

如何確定從ExportedFunctions_EMPTY導出哪一個來自ExportedFunctions_FULL?

+0

我試過CompositionContainer.Catalog.Parts.item.ExportDefinitions,但似乎GetExportedValues不接受像「Catalog.Parts」或「ExportDefinitions」 – Tim 2014-12-03 11:21:00

回答

0

你可以簡單地調用GetType()方法和檢查返回Type對象的FullName財產。

foreach (var exp in exp_list) 
{ 
    Console.WriteLine(exp.GetType().FullName); 
} 
+0

感謝您的答覆參數,但在我的情況,我有一個exp的空值。 – Tim 2014-12-15 06:25:37