2010-01-10 61 views
0

我正在寫一個連接到網上商店,通過它的API和讀/寫值Windows應用程序.NET插件在......哪裏去

網絡商店可以有多個支付網關,我在想編寫一個插件,以每一個和創建用戶界面,將可以選擇每一個加載正確的程序集...

我想法是有多個庫(.dll)並加載正確的一旦建立...

我確實認爲這是80年代後期發展,所以我想知道是否有什麼新的東西可以幫助我在.NET 3.5 SP1上開發此類行爲

我是新來的這件事情,爲此,我會問你什麼是接近最好的辦法。

謝謝。

附:我讀到MEFManaged Extensibility Framework),但它仍然是預覽(MEF預覽8是電流),並且只可在.NET 4.0,所以我不能走那條路:-(

回答

2

看看MEFUnity,它們是微軟提供的兩個非常有用的項目,它們可以幫助您擴展應用程序(MEF實際上在VS2010中用於支持擴展)

+0

我剛剛更新了,我不能與MEF去...我很快就按下編輯我得到你的答案:)但它仍然是非常新的技術,我不能以我的貝塔/預覽狀態的應用程序。 MEF到達之前人們做了什麼? – balexandre 2010-01-10 12:08:21

+0

好吧,就像我說的,還有Unity選項。這真的只是一個D.I.容器,但它可以用作插件架構的基礎。如果你使用Silverlight或WPF,你也可以看看http://compositewpf.codeplex.com/。 – Rory 2010-01-10 12:13:59

1

在.NET 3.5中添加了許多輔助類System.Addin namespace。這些幫助解決了很多鍋爐代碼和這種開發中的更多困難方面(例如在啓動和運行時加載和刪除插件)作爲代碼隔離),但它們仍然遵循您所描述的基本模式。

我沒有親自使用他們在現實世界中的代碼,但我周圍有他們亂七八糟,他們似乎乍一看工作不夠好。

綜述可以發現here