Ejemplo n.º 1
0
        public async Task StructurePefetchAsyncTest()
        {
            Key containerKey;
            Key bookShop0Key;
            Key book0Key;
            Key bookShop1Key;
            Key book1Key;

            PrefetchTestHelper.CreateOfferContainer(Domain, out containerKey, out book0Key, out bookShop0Key,
                                                    out book1Key, out bookShop1Key);

            using (var session = Domain.OpenSession())
                using (var tx = session.OpenTransaction()) {
                    var containers = session.Query.Many <Model.OfferContainer>(EnumerableUtils.One(containerKey))
                                     .Prefetch(oc => oc.IntermediateOffer).AsAsync();
                    foreach (var key in await containers)
                    {
                        PrefetchTestHelper.AssertOnlySpecifiedColumnsAreLoaded(containerKey, containerKey.TypeInfo, session,
                                                                               field => PrefetchTestHelper.IsFieldToBeLoadedByDefault(field) || field.Name.StartsWith("IntermediateOffer"));
                    }
                }
        }
Ejemplo n.º 2
0
        public async Task StructureFieldsPrefetchAsyncTest()
        {
            Key containerKey;
            Key bookShop0Key;
            Key book0Key;
            Key bookShop1Key;
            Key book1Key;

            PrefetchTestHelper.CreateOfferContainer(Domain, out containerKey, out book0Key, out bookShop0Key,
                                                    out book1Key, out bookShop1Key);

            using (var session = Domain.OpenSession())
                using (var tx = session.OpenTransaction()) {
                    var containers = session.Query.Many <Model.OfferContainer>(EnumerableUtils.One(containerKey))
                                     .Prefetch(oc => oc.RealOffer.Book)
                                     .Prefetch(oc => oc.IntermediateOffer.RealOffer.BookShop).AsAsync();
                    foreach (var key in await containers)
                    {
                        PrefetchTestHelper.AssertOnlyDefaultColumnsAreLoaded(book0Key, book0Key.TypeInfo, session);
                        PrefetchTestHelper.AssertOnlyDefaultColumnsAreLoaded(bookShop1Key, bookShop1Key.TypeInfo, session);
                    }
                }
        }