プロパティはprotected
、クラス内またはその継承のいずれかからのみアクセスできることを意味します。
public class ActivationCode{
public virtual int LoginAccountId { get; set; }
protected virtual string ActivatedCode { get; set; }
protected virtual DateTime ActivationDate { get; set; }
public void Foo(){
var x = this.ActivatedCode; // Valid
}
}
public class Foo{
new ActivationCode().ActivatedCode //Invalid access
}
と同様に、プロパティを からprotected
に変更できます。public
LoginAccountId
についてのMSDNの記事を読むprotected
:
protectedキーワードはメンバー アクセス修飾子です。保護されたメンバーは、それが宣言されているクラス内から、およびこのメンバーを宣言したクラスから派生した任意のクラス内からアクセスできます。
基本クラスの保護されたメンバーは、派生クラスの型を介してアクセスが行われる場合にのみ、派生クラスでアクセスできます。たとえば、次のコード セグメントについて考えてみます。
アップデート:
クラスは次のActivationCode
ようになります。
public class ActivationCode
{
public virtual int LoginAccountId { get; set; }
public virtual string ActivatedCode { get; set; }
public virtual DateTime ActivationDate { get; set; }
}