這篇文章主要介紹C#如何使用反射獲取dll文件中的類型并調用方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
使用反射(Reflect)獲取dll文件中的類型并調用方法,具體內容如下
需引用:System.Reflection;
1. 使用反射(Reflect)獲取dll文件中的類型并調用方法(入門案例)
static void Main(string[] args) { //dll文件路徑 string path = @"D:\VS2015Project\001\Computer\bin\Debug\computer.dll"; //加載dll文件 Assembly asm = Assembly.LoadFile(path); //獲取類 Type type = asm.GetType("Computer.Computer"); //創建該類型的實例 object obj = Activator.CreateInstance(type); //獲取該類的方法 MethodInfo mf = type.GetMethod("ShowDrives"); //調用方法 mf.Invoke(obj, null); Console.ReadKey(); }
2. 生成類庫(computer.dll)的computer.cs文件代碼
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace Computer { public class Computer { private DriveInfo[] drives; public Computer() { this.drives = DriveInfo.GetDrives(); } public void ShowDrives() { Console.WriteLine("該電腦的磁盤驅動器有:\r\n"); foreach (var item in drives) { Console.WriteLine(item); } } } }
3. 反射調用結果:
C#是一個簡單、通用、面向對象的編程語言,它由微軟Microsoft開發,繼承了C和C++強大功能,并且去掉了一些它們的復雜特性,C#綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向組件編程從而成為.NET開發的首選語言,但它不適用于編寫時間急迫或性能非常高的代碼,因為C#缺乏性能極高的應用程序所需要的關鍵功能。
以上是“C#如何使用反射獲取dll文件中的類型并調用方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。