我遇到了一個奇葩問題,具體是這樣的。
有一個類如下:
class Child
{
private int age;
private string name;
private Mydll test;
public void PrintChild()
{
Console.WriteLine("hello");
}
}
其中有一句:
private Mydll test;
這個“Mydll”型別是來自一個外部參考的dll里的變數型別。
業務邏輯是這樣的
程式運行后,用戶可能會加載這個外部的dll,也可能不加載這個dll,把他理解為一個擴展,我也不知道用戶是否會加載,并且業務上也不能強制用戶去加載,那么問題來了。
如果用戶加載了這個dll,那么這句
private Mydll test;就可以正常執行
如果用戶沒加載這個dll,那么這句
private Mydll test;就會報錯。
但是我又不能不寫
private Mydll test;這句,萬一用戶加載了呢。
所以問題就是,如果根據用戶是否加載這個dll來動態宣告這個變數型別?
謝謝!
uj5u.com熱心網友回復:
樓主這是何苦,直接宣告為object型別,運行時用反射來賦值就是了。uj5u.com熱心網友回復:
把你所謂“加載”的代碼貼出來才知道你應該怎么寫。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/167284.html
標籤:C#
