0

使用文档中的示例:

public class Artist
{
  public int ArtistId { get; set; }
  public string Name { get; set; }
  public IEnumerable<Album> Albums { get; set; }
}

...

var eagerDynamicArtist = db.Artists.FindAllByArtistId(22).WithAlbums().FirstOrDefault();

Console.WriteLine("Artist {0} {1}", eagerDynamicArtist.ArtistId, eagerDynamicArtist.Name);

foreach (var album in eagerDynamicArtist.Albums)
{
  Console.WriteLine("\t{0}", album.Title);
}

问题是,专辑列表返回 null(生成的查询是好的)。
如果我更改Albums为:

public IEnumerable<dynamic> Albums { get; set; }

如何在将列表Albums定义为时显式转换表?AlbumsIEnumerable<Album>

注意:我显然在使用其他表,但结构相似。我假设“专辑”表没有神奇地转换,因为 POCO 类有更多字段(?)。

4

1 回答 1

1

Albums 属性应该是 IList<Album> 而不是 IEnumerable<Album>。

于 2013-08-06T18:29:01.160 回答