【发布时间】:2010-09-25 06:59:19
【问题描述】:
我有具有内部属性的课程:
internal virtual StateEnum EnrolmentState
{
get { ..getter logic }
set { ..setter logic }
}
但是我希望能够在程序集之外访问此属性,因此我创建了仅返回此属性的方法:
public StateEnum GetCurrentState()
{
return EnrolmentState;
}
但是当我从这个程序集之外的类调用这个方法时,我得到一个异常
(System.TypeLoadException: Method 'get_EnrolmentState' on type 'EnrolmentAopProxy' from assembly '44fe776f-458e-4c5d-aa35-08c55501dd43, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' is overriding a method that is not visible from that assembly.)
因此可以以任何方式访问程序集之外的内部成员,或者我应该考虑另一种方法。
顺便提一下,这个类被用作 O/R 映射器实体 (NPersist),它被 O/R 映射器覆盖以注入持久性代码。
【问题讨论】:
-
那是您的确切代码吗?因为在指定的代码中没有提到 EnrolmentState,但在日志中提到了 。
-
是的,我只添加了一个示例代码,而实际代码是虚拟内部属性“EnrolmentState”。感谢您的评论
-
好的,我已经根据这个编辑了我的答案。
标签: c# oop language-features