gpt4 book ai didi

c# - 传递一个列表<{Anon :string}> to a function in C#

转载 作者:太空宇宙 更新时间:2023-11-03 17:15:52 25 4
gpt4 key购买 nike

给定:

一个返回匿名类型的 linq 表达式,其中一个字段是一个字符串:

var list = new List<MyClass>();
var myStringList = (from myClass in list
select new {myClass.StringField}).ToList();
var processedStrings = processStrings(myStringList);

还有一个我传递 List<string> 的函数到:

List<string> processStrings(List<string> stringsToProcess) {}

问题:

传递 myStringList 时出现以下编译器错误:

ArgumentType type 'System.Collections.Generic.List<{StringField:string}>' is not assignable to parameter type 'System.Collections.Generic.List<string>'

所以我尝试使用 .Cast<string>() 来解决这个问题这消除了编译器错误,但抛出一个异常,它不能将匿名字符串转换为字符串。

有没有无需手动处理每个字符串的想法?

最佳答案

尽量不要返回带有一个字符串的匿名对象,而是返回字符串本身:

var list = new List<MyClass>();
var myStringList = (from myClass in list
select myClass.StringField).ToList();
var processedStrings = processStrings(myStringList);

关于c# - 传递一个列表<{Anon :string}> to a function in C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5656296/

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