我使用了InheritedExport屬性,並有一個對象樹。想想IMessageSender,我有SmtpSender,TextSender,HttpPostSender。但通過裝飾模式,我有其他的類也繼承這個MEF的InheritedExport屬性。MEF:找到懶惰導入的類型
但是,當撰寫發件人時,我不想要裝飾者組成。 現在懶惰可以幫助,而我只檢索不是裝飾類型的對象。但我不能問懶惰究竟是什麼。也許元數據可能會有所幫助,但元數據僅適用於具有此元數據的對象。我不想強迫實施者(閱讀:開發者)將正確的元數據添加到他們的裝飾者或發件人。
任何想法?謝謝!
現在我才知道你的元數據意味着什麼! :) 所以答案可能會更具體一點,但它確實是正確的! :) – 2013-09-19 12:48:59
只是重新閱讀我的答案,甚至我幾乎不明白我的意思。抱歉!無論如何,如果您已經轉移到.NET 4.5,請嘗試查看新的RegistrationBuilder API。您可以使用它來代替'InheritedExportAttribute'來以編程方式控制組成哪些類型。 – Olly 2013-09-19 21:38:59