是否有任何库(如开源项目等)可以更轻松地使用复杂的反射,如动态创建对象或类,检查实例等?
由于
答案 0 :(得分:4)
有一个LinFu库可以做很多其他有趣的东西而不是反射...试试吧
答案 1 :(得分:2)
在我看来,我认为反思不会比现在更容易使用。几乎所有核心功能都包含在Type类中。只需花时间了解它是如何工作的,你就不需要另外一个不必要的层了。
具体来说,你可以做'复杂的事情'来创建像这样的单元化对象:
// Instantiates an uninitialized object of the specified type.
var newObject = (MyObject)FormatterServices.GetUninitializedObject( elementType );
答案 2 :(得分:1)
那里有一些有趣的ReflectionHelpers。
答案 3 :(得分:1)
根据定义,反思很难。它是整个对象结构的间接级别。我不确定如何在不限制其力量的情况下让它变得更容易。
答案 4 :(得分:1)
如果反思很难,那么您可能无法完全理解.Net的基础知识。您可能想尝试像this这样的教程。
答案 5 :(得分:0)
MS单元测试程序集具有PrivateObject和PrivateType,可以非常直接地访问私有实例/类型成员。
答案 6 :(得分:0)
Fastflect是我使用的一个相当不错的库,它提供了用于调用和访问成员的简单得多的方法,并且为您可能需要的几乎任何事物提供了超简单的委托生成,如果您缓存它,可以显着提高性能。代表。它被很好地记录在案,确实有帮助。这是我在编写自己的一组强类型泛型委托生成方法之前使用的方法。