如果您使用反射,泛型就会变得非常棘手。您可以简单地使用非通用接口吗?IDictionary
/ IList
? 这会容易得多......类似:
static void Write(object obj) {
if (obj == null) { }
else if (obj is IDictionary) { Write((IDictionary)obj); }
else if (obj is IList) { Write((IList)obj); }
else { Console.WriteLine(obj); }
}
static void Write(IList data) {
foreach (object obj in data) {
Console.WriteLine(obj);
}
}
static void Write(IDictionary data) {
foreach (DictionaryEntry entry in data) {
Console.WriteLine(entry.Key + "=" + entry.Value);
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1140 次 |
最近记录: |