Exemplo n.º 1
0
        public override async Task LoadRelationsAsync(ComputerDatabaseContext context,
                                                      DbEntityEntry <Motherboard> entry)
        {
            await entry.Reference(entity => entity.Brand).LoadAsync();

            await entry.Reference(entity => entity.Chipset).LoadAsync();

            await context.Entry(entry.Entity.Chipset).Reference(entity => entity.Brand).LoadAsync();

            await entry.Reference(entity => entity.Socket).LoadAsync();

            await context.Entry(entry.Entity.Socket).Reference(entity => entity.Brand).LoadAsync();
        }
Exemplo n.º 2
0
        public override async Task LoadRelationsAsync(ComputerDatabaseContext context,
                                                      DbEntityEntry <Build> entry)
        {
            if (entry.Entity.GraphicsCard != null)
            {
                await entry.Reference(entity => entity.GraphicsCard).LoadAsync();

                var graphicsCard = context.Entry(entry.Entity.GraphicsCard);
                await graphicsCard.Reference(entity => entity.Brand).LoadAsync();

                await graphicsCard.Reference(entity => entity.ChipsetBrand).LoadAsync();
            }

            if (entry.Entity.Motherboard != null)
            {
                await entry.Reference(entity => entity.Motherboard).LoadAsync();

                var motherboard = context.Entry(entry.Entity.Motherboard);
                await motherboard.Reference(entity => entity.Brand).LoadAsync();

                await motherboard.Reference(entity => entity.Chipset).LoadAsync();

                var chipset = context.Entry(entry.Entity.Motherboard.Chipset);
                await chipset.Reference(entity => entity.Brand).LoadAsync();

                await motherboard.Reference(entity => entity.Socket).LoadAsync();

                var socket = context.Entry(entry.Entity.Motherboard.Socket);
                await socket.Reference(entity => entity.Brand).LoadAsync();
            }

            if (entry.Entity.Processor != null)
            {
                await entry.Reference(entity => entity.Processor).LoadAsync();

                var processor = context.Entry(entry.Entity.Processor);
                await processor.Reference(entity => entity.Brand).LoadAsync();

                await processor.Reference(entity => entity.Socket).LoadAsync();

                await context.Entry(entry.Entity.Processor.Socket).Reference(entity => entity.Brand)
                .LoadAsync();
            }
        }