在.net 中,使用反射工廠類,能夠方位動態連接庫中 對象的元數據,動態建立對象,.net
具體理論以及實現這裏再也不詳述。對象
如今引用一段代碼,簡單表示一下:string
/// <summary>
/// 使用沒有添加引用的dll
/// </summary>
/// <typeparam name="T">要建立對象的類型</typeparam>
/// <param name="assemblyName">類型所在程序集名稱</param>
/// <param name="nameSpace">類型所在命名空間</param>
/// <param name="className">類型名</param>
/// <returns></returns>
public static T CreateInstance<T>(string assemblyName, string nameSpace, string className)
{
try
{
string fullName = nameSpace + "." + className;//命名空間.類型名
//assemblyName = dll所在的絕對路徑 例如 c:\TClass\obj.dll
object ect = Assembly.LoadFile(assemblyName).CreateInstance(fullName);//加載程序集,建立程序集裏面的 命名空間.類型名 實例
return (T)ect;//類型轉換並返回
}
catch
{
//發生異常,返回類型的默認值
return default(T);
}
}
class