我在寫一個簡單的基於插件的程序。我有一個接口IPlugin
,它有一些方法和功能,在我的主程序中有一個List<Plugin>
。爲了簡便起見,可以說,它的定義是這樣的:C#創建DLL插件,實現接口
public interface IPlugin
{
public void OnKeyPressed(char key);
}
每次按下一個鍵,我依次通過插件列表,並呼籲他們每個人OnKeyPressed(c)
。
我可以創建一個類像這樣,並將其添加到列表...
public class PrintPlugin
{
public void OnKeyPressed(char key)
{
Console.WriteLine(c);
}
}
然後當你按下一個鍵,把它打印出來。但我希望能夠從DLL文件中加載插件。 This link很有幫助,但它不能解釋如何讓DLL中的類實現我的接口...我該怎麼做?我真的不希望有到IPlugin.cs
文件我想打一個插件每次複製...
你可以添加對你的庫的引用,因爲你可以使用你的插件接口。 – VMAtm
我希望能夠在運行時加載它們,以便用戶可以創建自己的插件。 – Entity
然後,您應該創建一個屬性,如「列表」,以便用戶可以將他們的插件添加到您的列表中。 –
VMAtm