溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#如何使用反射獲取dll文件中的類型并調用方法

發布時間:2021-05-22 13:21:04 來源:億速云 閱讀:589 作者:小新 欄目:編程語言

這篇文章主要介紹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#如何使用反射獲取dll文件中的類型并調用方法

C#是什么

C#是一個簡單、通用、面向對象的編程語言,它由微軟Microsoft開發,繼承了C和C++強大功能,并且去掉了一些它們的復雜特性,C#綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向組件編程從而成為.NET開發的首選語言,但它不適用于編寫時間急迫或性能非常高的代碼,因為C#缺乏性能極高的應用程序所需要的關鍵功能。

以上是“C#如何使用反射獲取dll文件中的類型并調用方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女