2 回答

TA貢獻(xiàn)1817條經(jīng)驗(yàn) 獲得超14個(gè)贊
對(duì)“field_inner”進(jìn)行操作的 FieldInfo 屬性需要引用“volt_struct”類型的對(duì)象,因此 Time 在這里不起作用。您需要先在“field_outer”上執(zhí)行 GetValue,如下所示:
foreach(FieldInfo field_outer in fi_outer)
{
var outer_object = field_outer.GetValue(Time);
if (outer_object == null) throw someexception;
foreach (FieldInfo field_inner in fi_inner)
{
s = string.concat(s+field_inner.GetValue(outer_object) + ";");
}
}
如果您想改變父類型和子類型,您可以將它們作為 System.Type 參數(shù)傳入,或者您可以編寫具有兩個(gè)類型參數(shù)的泛型函數(shù)。您也可以將 'fi_inner =' 移入外循環(huán)并執(zhí)行 fi_inner = outer_object.GetType().GetFields()。這將連接任何類型的子對(duì)象上的字符串。
- 2 回答
- 0 關(guān)注
- 199 瀏覽
添加回答
舉報(bào)