我正在尝试用LinqPad编写一个Dump()方法,等同于我自己的问题.我正在从Java迁移到C#,这是一个练习而不是业务需求.除了倾倒字典之外,我几乎一切都在工作.
问题是KeyValuePair是一种Value类型.对于大多数其他值类型,我只需调用ToString方法,但这是不够的,因为KeyValuePair可能包含Enumerables和其他具有不良ToString方法的对象.所以我需要弄清楚它是否是一个KeyValuePair然后再投射它.在Java中,我可以使用通配符泛型,但我不知道C#中的等价物.
在给定对象o的情况下,您的任务确定它是否为KeyValuePair并在其键和值上调用Print.
Print(object o) {
...
}
Run Code Online (Sandbox Code Playgroud)
谢谢!