Expression.PropertyOrField 是否可以用于访问静态属性或字段
本文关键字:静态 属性 字段 访问 用于 PropertyOrField 是否 Expression | 更新日期: 2023-09-27 18:22:43
Expression.PropertyOrField
的expression
参数的文档指出,可以为静态成员null
它:
一个表达式,其
Type
包含名为propertyOrFieldName
的属性或字段。对于静态成员,可以null
这样做。
(强调我的(
但是,每当我通过null
时,我都会得到一个ArgumentNullException
。
此方法的文档是矛盾的:
expression
参数的文档指出,可以为静态成员null
它ArgumentNullException
的文档指出,如果expression
null
,则会抛出它
事实是:
此方法不能用于获取对静态成员的访问权限,expression
参数的文档不正确。
即使提供了具有正确Type
的表达式,此方法也不会按预期工作,因为它只查找实例成员。
若要访问静态字段或属性,请改用Expression.MakeMemberAccess
。