gpt4 book ai didi

c# - 传递 var 类型的变量 - 未知类型

转载 作者:太空宇宙 更新时间:2023-11-03 14:03:44 24 4
gpt4 key购买 nike

我有以下代码行:

var groups = inputRows.GroupBy(x => new { x.stateCIP, x.facultyRank });

我想将组传递给另一个类方法:

OutputFileWriter.write(groups);

但是,我不知道为write方法声明输入参数的类型是什么,因为它不会接受var。

public static void write(?????? groups)

我附上了当我将鼠标悬停在变量组区域上时收到的消息的照片:enter image description here

最佳答案

一种方法是创建一个具有两个属性的类,即 stateCIP 和 facultyRank,然后使用它而不是创建您现在正在执行的匿名类型。然后你可以将它而不是匿名类型传递给你的方法

所以代替var groups = inputRows.GroupBy(x => new { x.stateCIP, x.facultyRank })

尝试

var groups = inputRows.GroupBy(x => new MyClass(StateCIP = x.stateCIP, FacultyRank = x.facultyRank });

那么你可以做

public static void write(IEnumerable<MyClass> groups)

或者如果你想对只是迭代它们的组对象做更多的事情,比如在 Write 方法中添加或删除组中的项目,那么在调用方法中使用以下方法将 IEnumerable 转换为 List:

var groups = inputRows.GroupBy(x => new MyClass(StateCIP = x.stateCIP, FacultyRank = x.facultyRank }).ToList();

然后把你的方法写成

public static void write(IList<T> groups)

关于c# - 传递 var 类型的变量 - 未知类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10001587/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com