gpt4 book ai didi

c# - 当您知道要分配的字段名称时,是否可以将数组分配给未知类型的数组?

转载 作者:行者123 更新时间:2023-12-03 22:58:36 25 4
gpt4 key购买 nike

我需要将一个数组分配给一个字段。我不知道字段类型,但我确实有对实例和字段名称的引用。我可以假设数组可以转换为字段类型。这可以吗?

巴斯

编辑:

希望这段代码能够澄清我想要做什么,这会导致分配异常:

class MyClass
{
static void Main()
{
MyClass t = new MyClass();
A a = new A();
C[] c = new C[] {new B()};
t.Assign(a, "field", c);
}

void Assign(object obj, string field, object[] value)
{
// crashes
obj.GetType().GetField(field).SetValue(obj, value);
}
}

class A
{
public B[] field;
}

class B : C { }

class C { }

最佳答案

instance.GetType()
.GetField("fieldName", BindingFlags.Instance | BindingFlags.NonPublic)
.SetValue(instance, array);

关于c# - 当您知道要分配的字段名称时,是否可以将数组分配给未知类型的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1663470/

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