public void MetaConditional() { var dic = DynamicQueryCore.QueryMetadata( from a in Database.Query <AlbumEntity>() select new { Author = a.Id > 1 ? (ArtistEntity)a.Author : (IAuthorEntity)(BandEntity)a.Author } ); DirtyMeta meta = (DirtyMeta)dic["Author"]; Assert.Equal(meta.Implementations, Implementations.By(typeof(ArtistEntity), typeof(BandEntity))); }
public void MetaCoallesce() { var dic = DynamicQuery.QueryMetadata( from a in Database.Query <AlbumEntity>() select new { Author = (ArtistEntity)a.Author ?? (IAuthorEntity)(BandEntity)a.Author } ); DirtyMeta meta = (DirtyMeta)dic["Author"]; Assert.AreEqual(meta.Implementations, Implementations.By(typeof(ArtistEntity), typeof(BandEntity))); }