gpt4 book ai didi

c# - 在 c# .Net 中创建基于索引的类

转载 作者:太空狗 更新时间:2023-10-29 22:12:46 25 4
gpt4 key购买 nike

我有一些类,想使用索引或类似的东西访问它们的属性

ClassObject[0] 或更好的是 ClassObject["PropName"]

而不是这个

ClassObj.PropName.

谢谢

最佳答案

你需要索引器:

http://msdn.microsoft.com/en-us/library/aa288465(v=vs.71).aspx

public class MyClass
{
private Dictionary<string, object> _innerDictionary = new Dictionary<string, object>();

public object this[string key]
{
get { return _innerDictionary[key]; }
set { _innerDictionary[key] = value; }
}
}

// Usage
MyClass c = new MyClass();
c["Something"] = new object();

这是记事本编码,所以对它持保留态度,但索引器语法是正确的。

如果您想使用它来动态访问属性,那么您的索引器可以使用反射将键名作为属性名。

或者,查看 dynamic 对象,特别是 ExpandoObject,它可以转换为 IDictionary 以便根据文字访问成员字符串名称。

关于c# - 在 c# .Net 中创建基于索引的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7090278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com