【发布时间】:2020-03-09 04:29:52
【问题描述】:
我正在尝试做类似下面示例的操作,但遇到异常 -
System.ArgumentException:方法的“System.Collections.Generic.IEnumerable1 ' cannot be used for parameter of type 'System.Linq.IQueryable1”类型的表达式。
这是我的代码和相关类。我该如何解决这个问题,除了尝试做之外还有什么办法。
var channels = _channelService.Collection;
var tracks = _trackService.Collection;
var query = from b in tracks.AsQueryable()
select b;
var data = (from q in channels.AsQueryable()
from p in q.Episodes
//from x in trackcoll.AsQueryable()
select new
{
p,
Tracks = query.Where(w => p.Tracks.Contains(w.Id))
}).ToList();
// Related classes
public class ContentBase : IAuditable
{
public string Id { get; set ; }
public string CreatedBy { get ; set ; }
public string CreatedOn { get ; set ; }
public string UpdatedBy { get ; set ; }
public string UpdatedOn { get; set; }
}
public class Channel: ContentBase
{
public List<Episode> Episodes { get; set; }
}
public class Episode: ContentBase
{
// List of track Id
public List<string> Tracks { get; set; }
}
public class Track: ContentBase
{
public string TrackUrl { get; set; }
public string Duration { get; set; }
public string Size { get; set; }
public string ContentType { get; set;
}
【问题讨论】:
-
您可以将您的 c# 类(频道、曲目、剧集)添加到问题中吗?
-
@ĐĵΝιΓΞΗΛψΚ请检查
标签: c# mongodb linq mongodb-.net-driver