C# 为什么这个集合不起作用?

C# 为什么这个集合不起作用?,c#,linq,C#,Linq,我有Post和许多标签,在那里我选择了标签Name。我只想把所有的标签输出为简单的字符串 我得到这些错误 无法将lambda表达式转换为委托类型“System.Func”,因为块中的某些返回类型不能隐式转换为委托返回类型 无法将类型“int”隐式转换为“char”。存在显式转换(是否缺少强制转换?) 我还尝试使用“,甚至将分隔符存储在变量中,但没有任何帮助。我做错了什么?用Select替换你的SelectMany用Select替换你的SelectMany用Select替换你的SelectMany

我有
Post
和许多
标签
,在那里我选择了标签
Name
。我只想把所有的标签输出为简单的字符串

我得到这些错误

无法将lambda表达式转换为委托类型“System.Func”,因为块中的某些返回类型不能隐式转换为委托返回类型

无法将类型“int”隐式转换为“char”。存在显式转换(是否缺少强制转换?)


我还尝试使用
,甚至将分隔符存储在变量中,但没有任何帮助。我做错了什么?

Select
替换你的
SelectMany
Select
替换你的
SelectMany
Select

替换你的
SelectMany
Select
替换你的
SelectMany
SelectMany
替换你的
SelectMany
SelectMany
替换返回的查询列表的列表,它就像一个连接快捷方式,因此会出现错误。您只需将其替换为Select,以下是代码,它应该可以工作:

var posts = _db.Posts.OrderByDescending(x => x.CreatedDateTime).AsEnumerable().Select(post => new
{
    post.Id,
    post.Title,
    Tags = post.Tags.Select(x => x.Name).Aggregate((current, next) => current + ',' + next) // error
});

SelectMany展平返回列表列表的查询,这就像一个连接快捷方式,因此会出现错误。您只需将其替换为Select,以下是代码,它应该可以工作:

var posts = _db.Posts.OrderByDescending(x => x.CreatedDateTime).AsEnumerable().Select(post => new
{
    post.Id,
    post.Title,
    Tags = post.Tags.Select(x => x.Name).Aggregate((current, next) => current + ',' + next) // error
});

SelectMany展平返回列表列表的查询,这就像一个连接快捷方式,因此会出现错误。您只需将其替换为Select,以下是代码,它应该可以工作:

var posts = _db.Posts.OrderByDescending(x => x.CreatedDateTime).AsEnumerable().Select(post => new
{
    post.Id,
    post.Title,
    Tags = post.Tags.Select(x => x.Name).Aggregate((current, next) => current + ',' + next) // error
});

SelectMany展平返回列表列表的查询,这就像一个连接快捷方式,因此会出现错误。您只需将其替换为Select,以下是代码,它应该可以工作:

var posts = _db.Posts.OrderByDescending(x => x.CreatedDateTime).AsEnumerable().Select(post => new
{
    post.Id,
    post.Title,
    Tags = post.Tags.Select(x => x.Name).Aggregate((current, next) => current + ',' + next) // error
});

@像这样糊状的
post.Tags.SelectMany(x=>x.Name).Aggregate((当前,下一个)=>string.Format(“{0}{1}”,当前,下一个))
没有任何变化,我会收到相同的错误。是的,但没有意义-对不起,我/我走错了方向。@pasty像这样吗
post.Tags.SelectMany(x=>x.Name).Aggregate((当前,下一个)=>string.Format(“{0}{1}”,当前,下一个))
没有任何变化,我会收到相同的错误。是的,但没有意义-对不起,我/我走错了方向。@pasty像这样吗
post.Tags.SelectMany(x=>x.Name).Aggregate((当前,下一个)=>string.Format(“{0}{1}”,当前,下一个))
没有任何变化,我会收到相同的错误。是的,但没有意义-对不起,我/我走错了方向。@pasty像这样吗
post.Tags.SelectMany(x=>x.Name).Aggregate((当前,下一个)=>string.Format(“{0}{1}”,当前,下一个))
没有任何变化,我会收到相同的错误。是的,但没有意义-抱歉,我走错了方向。