美好的一天,我正在用 C# 制作一个列表,我希望在其中生成另一个列表,其中包含使用 aArray()
的属性
。这就是我所拥有的,但我不知道如何为动态属性分配值刚刚创建。Array()
for
string[] propiedades = { "foo","x"};
var prueba = new List<string>();
for(int x = 0;x <= propiedades;x++){
prueba.Add(propiedades[x]);
prueba.propiedades[x]="test";
}
我正在寻找这样的东西:
prueba.foo: "test"
prueba.x:"x"
我不知道我想做的事情是否可行,非常感谢你提前
问候。
这不是直接可能的,但最接近的是字典:
这是您可以使用它的方式:
tipos dinamicos
您可以使用c#进行评估使用动态类型(C# 编程指南)
教程:创建和使用动态对象(C# 和 Visual Basic)
一开始可能不太容易理解,但我认为它解决了你提出的情况。虽然你必须考虑到你在具有动态属性的代码中不会有智能感知
我特别推荐分析类
动态对象类
有了这个,你可以创建你正在寻找的类,如此处所述
在运行时动态添加 C# 属性
看看它是如何定义类的
使用它
加载属性和值的字典后,您可以直接访问它们,就好像键是属性一样
你不能这样做,因为你不理解字符串,字符串是一个字符串,你可以有一个字符串数组甚至一个字符串列表,或者一个字符串数组列表等等......,但我怀疑它是不是你想要的
我认为您想要做的是有一个动态类,您可以向其中添加属性或属性,如果是这种情况,请查看此链接,这是答案:https ://stackoverflow.com/questions/44067241/add-properties -动态地-在运行时在现有的类-c-sharp