读书人

如何样让 class1[quot;namequot;] = quot;王quot; 等效

发布时间: 2012-08-11 20:50:31 作者: rapoo

怎么样让 class1["name"] = "王" 等效于 class1.name ="王"
怎么样让 class1["name"] = "王" 等效于 class1.name ="王"

就是本来是这样写class1.name ="王"
但是函数需要class1["name"] = "王" 这种写法
怎么样实现,是不是在类或属性的上面加类似于[Serializable] 这样的东西

[解决办法]
实现索引器:

C# code
class class1{    public string Name { get; set; }    public string Address { get; set; }    public string this[string propertyname]    {        //当然更好的写法是反射        get {            if (propertyname == "name") return Name;            if (propertyname == "address") return Address;            return "";        }        set {            if (propertyname == "name") Name = value;            if (propertyname == "address") Address = value;        }    }} 

读书人网 >C#

热点推荐