C#加载dll问题 20
C#可以在解决方案那边添加dll的引用,也可以用反射loadfrom()加载dll。但是loadfrom比直接添加引用麻烦很多,我想知道这两种方法有什么利弊。...
C#可以在解决方案那边添加dll的引用,也可以用反射loadfrom()加载dll。但是loadfrom比直接添加引用麻烦很多,我想知道这两种方法有什么利弊。
展开
2个回答
展开全部
添加引用的方法
1.安全,编译器知道引用的类型具体是什么.避免程序异常.
2.性能好,引用程序集之后程序集会在输出目录生成,程序运行会首先在程序目录和子目录搜索程序集
另外就是程序运行的某个时刻,程序会初始化引用类型的类型,不需要等到类型初始化在初始化引用类型的类型.
缺点是必须在写程序的时候引用,不够灵活.
反射的方法.
1.灵活,可以在程序运行的时刻动态加载.
缺点是
性能差:反射主要通过使用字符串匹配来遍历元数据,这样不仅在加载程序集,也在调用程序集方法的时候也会遍历匹配.
不安全:通过输入字符串会导致类型不安全,容易报错.
1.安全,编译器知道引用的类型具体是什么.避免程序异常.
2.性能好,引用程序集之后程序集会在输出目录生成,程序运行会首先在程序目录和子目录搜索程序集
另外就是程序运行的某个时刻,程序会初始化引用类型的类型,不需要等到类型初始化在初始化引用类型的类型.
缺点是必须在写程序的时候引用,不够灵活.
反射的方法.
1.灵活,可以在程序运行的时刻动态加载.
缺点是
性能差:反射主要通过使用字符串匹配来遍历元数据,这样不仅在加载程序集,也在调用程序集方法的时候也会遍历匹配.
不安全:通过输入字符串会导致类型不安全,容易报错.
展开全部
通过反射机制来实现的,可以灵活应用反射的相关机能来操作DLL。
追问
比如什么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询