none
匿名类型怎么传递 RRS feed

  • 问题

  • var list = db.aaa.select(c=>new {c.name}).ToList();

    list 对象可以在本方法中直接使用,但是我想传给其他函数,由于是匿名类型,函数怎么写方法的签名呢?

    2012年9月12日 9:45

答案

  • 我是举个例子,如果只是一个参数,我就直接定义类型了。

    如果是匿名或者复杂类型,请用var。在调试的时候你可以设置断点到这句上面,然后查看这个变量究竟是何种类型,然后用IEnumerable<你的实际类型>替换。

    如果匿名类型,又要进行函数传递(函数返回值不允许var,但是可以dynamic,必须是4.0的framework)。恐怕你可以这样做:

    public dynamic XXXX()
    {
       return ……;
    }
    
    foreach(dynamic item in XXXX())
    {
       //人为手动写!item.XXX;
    }

    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处

    2012年9月18日 1:49

全部回复