在匿名类型中迭代List <int>

时间:2015-07-30 05:51:21

标签: c# anonymous-types ninject-extensions ninject-interception

我正在使用Ninject Interception扩展来实现SQLLogging。 我有一个名为&#39; param&#39;的变量。它是一个匿名类型,如Watch窗口所示(见下图)。当我param.ToString()时,它返回了

{Countries = {System.Collections.Generic.List< int >}


var param = invocation.Request.Arguments[0]; 

其中invoation的类型为Ninject.Extensions.Interception.IInvoation Interface。

我需要得到的是名称及其项目。所以,对于这个,我想要像#34;国家= 36,124,826,840和#34;

如何迭代List来实现这一目标?另请注意,在这种情况下,名称Countries在运行时才会知道。它可能像

{Ages = {System.Collections.Generic.List< int >}

{Subjects={System.Collections.Generic.List< string >}

object in watch window

2 个答案:

答案 0 :(得分:0)

您可能想为List<T>编写自己的可视化工具。它将用于所有列表,不仅是您的匿名类型,但它可能仍然对您有用。

https://msdn.microsoft.com/en-us/library/e2zc529c.aspx

答案 1 :(得分:0)

您可以使用反射,循环属性,检查类型以及是否为列表,迭代列表。