コード例 #1
0
        static async Task MapAndCreateDashboard(this MetabaseApi api, Dashboard stateDashboard, IReadOnlyList <Mapping <CardId> > cardMapping)
        {
            var mappedCards = MapDashboardCards(stateDashboard.Cards, cardMapping).ToList();

            Console.WriteLine($"Creating dashboard '{stateDashboard.Name}'");
            await api.CreateDashboard(stateDashboard);

            await api.AddCardsToDashboard(stateDashboard.Id, mappedCards);
        }
コード例 #2
0
        static async Task MapAndCreateDashboard(this MetabaseApi api, Dashboard stateDashboard,
                                                IReadOnlyList <Mapping <CardId> > cardMapping, IReadOnlyList <Mapping <Collection> > collectionMapping)
        {
            var mappedCards = MapDashboardCards(stateDashboard.Cards, cardMapping).ToList();

            if (stateDashboard.CollectionId.HasValue)
            {
                stateDashboard.CollectionId = collectionMapping
                                              .Where(x => x.Source.Id == stateDashboard.CollectionId.Value)
                                              .Select(x => x.Target.Id)
                                              .First();
            }
            Console.WriteLine($"Creating dashboard '{stateDashboard.Name}'");
            await api.CreateDashboard(stateDashboard);

            await api.AddCardsToDashboard(stateDashboard.Id, mappedCards);
        }