控制对类成员的访问

时间:2014-09-02 18:52:52

标签: c# class

我希望一个特定的例程能够在类中设置变量 - 但该字段保持只读。

例如,int'authlevel'在这里应该可以公开访问 - 但只能由选择性子设置;

public class SessionAuth
{
    int authLevel;
    public int AuthLevel
    {
        get
            {return authLevel;}

        set
            {<<IF CALLER = SUB XYZ>> then authLevel=value;}

    }
  ...

这可能吗?

1 个答案:

答案 0 :(得分:4)

您可能可以通过诊断库(用于生成调用堆栈)来执行此操作,但您不想这样做。

如果您需要限制对setter的访问权限,请将其标记为private,以便只有您的班级才能对其进行修改。如果你不能相信自己的课程,你需要重新思考你的代码和设计。

public int MyProp { get; private set; }