![]() |
1
16
那完全不可能。属性在编译时被烘焙到程序集的元数据中,因此讨论传递 类的实例 属性没有任何意义,因为实例只存在于运行时。 另一方面,属性总是被反射所使用,所以我猜现在您正在检查类元数据上是否存在此自定义属性,您可以使用该实例。 |
![]() |
2
3
不可能的人,你不能把实例,委托,lambda表达式传递给属性的构造函数。关于它的一些讨论 here |
![]() |
3
2
您只能使用原语或原语数组作为属性参数,这是因为它们需要在编译时由编译器“排成一行”。 |
|
4
0
https://msdn.microsoft.com/en-us/library/aa288454(v=vs.71).aspx 基于MSDN,如果需要在这里传递类的实例进行处理,则完全无法完成。
另外,你能解释一下为什么我们站在属性上下文中,需要从他们自己的对象中获取信息吗。这听起来很奇怪,因为我们经常使用属性来解释关于对象的更多信息,而不是读取对象数据。 |
![]() |
5
0
为了访问非静态成员,需要在运行时实例化类。我有办法解决这个问题。如果要使用特定类的实例,可以基于列出的特定类型或表示为枚举的特定类型来管理实例化新实例。 我用工厂模式、战略模式和反思技术来做到这一点。策略模式是通过用枚举类型包装每个类来实现不同的算法,而工厂类应该负责注册所有实现类的类型,并根据定义的属性在运行时创建合适的类。一开始可能会很复杂,但后来很明显会变得复杂。下面是一个实际的例子:
|
![]() |
Aleo111 · 在java中向对象数组添加更多变量 3 年前 |
![]() |
Xutao · 我如何使用openssl创建这样的CSR 3 年前 |
![]() |
John Huang · 基于部分列表元素名称分配属性表名称的有效方法 3 年前 |
![]() |
Melvin · Python3 XML findall空输出 7 年前 |
![]() |
Aaron St Clair · 从常规查询访问客户属性 7 年前 |
|
huseyin · Rapidminer-拆分具有错误类型值的行 7 年前 |