如何将匿名类型作为参数传递?

181

我怎么将匿名类型作为参数传递给其他函数?考虑以下示例:

var query = from employee in employees select new { Name = employee.Name, Id = employee.Id };
LogEmployees(query);

query 变量在这里没有强类型。我应该如何定义我的 LogEmployees 函数来接受它?

public void LogEmployees (? list)
{
    foreach (? item in list)
    {

    }
}

换句话说,我应该使用什么东西代替?标记。


1
更好的不同的重复问题,涉及传递参数而不是返回数据:http://stackoverflow.com/questions/16823658/passing-linq-select-query-to-the-method?lq=1 - Rob Church
11个回答

0

我会使用IEnumerable<object>作为参数类型。然而,由于不可避免的显式转换,这并没有太大的好处。祝好!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接