如何在对象内部公开匿名对象dynamic
的复杂结构?
匿名对象被标记为internal
,所以我正在寻找一种创造性的方法来解决这个问题。
// This is the library I control
public void SendObject() {
var anonymous = new {
Text = "Test",
SubItem = new {
SubText = "Bla",
SubSub = new {
SubSubText = "Baha"
}
}
};
}
dynamic dyn = ExposeAnonymous(anonymous); // Perform voodoo
var result = ExternalLibrary.GetSpecialProperty(dyn);
// External library I don't control
public object GetSpecialProperty(dynamic dyn) {
return dyn.SubItem.SubSub.SubSubText;
}
问题是当发送dynamic
到我无法控制的其他外部库时,您会收到如下错误:
“object”不包含“SubItem”的定义。