3

如何使用;实现非对称访问器可访问性CodeDOM

public string Name
{
    get
    {
        return name;
    }
    protected set
    {
        name = value;
    }
}

我在这里发现了一个重复的问题,但是现在 C# 5.0 和 .NET framework 4.5 正在运行。现在也不可能了吗?

通过此代码;

//Declare a property in target class and set attributes of the property
                CodeMemberProperty newPropertyGetter = new CodeMemberProperty();
                newPropertyGetter.Attributes = (MemberAttributes)Enum.Parse(typeof(MemberAttributes), visibilityGetter) | MemberAttributes.Final;
                newPropertyGetter.Name = propName;
                newPropertyGetter.Type = new CodeTypeReference(propType);
                newPropertyGetter.HasGet = needGet;


                CodeMemberProperty newPropertySetter = new CodeMemberProperty();
                newPropertySetter.Attributes = (MemberAttributes)Enum.Parse(typeof(MemberAttributes), visibilitySetter) | MemberAttributes.Final;
                newPropertySetter.Name = propName;
                newPropertySetter.Type = new CodeTypeReference(propType);
                newPropertySetter.HasSet = needSet;

我可以这样;

public string Name
    {
        get
        {
            return name;
        }        
    }

public string Name
    {        
        protected set
        {
            name = value;
        }
    }

它有效吗?或者这不是一个好习惯?

4

0 回答 0