/// <summary>
        /// Print a list of datasets to user.
        /// </summary>
        /// <param name="datasets"></param>
        /// <returns>True if datasets exist, and false otherwise.</returns>
        private static bool PrintDatasets(IList <Dataset> datasets)
        {
            if (datasets == null || !datasets.Any())
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("No datasets found in Workspace {0} from WorkspaceCollection {1}", workspaceId, workspaceCollectionName);
                return(false);
            }

            Console.WriteLine("Existing datasets:");
            for (int i = 0; i < datasets.Count; i++)
            {
                ConsoleHelper.WriteColoredStringLine(string.Format("{0} dataset name:{1}, Id:{2}", i + 1, datasets[i].Name, datasets[i].Id), ConsoleColor.Green, 2);
            }

            Console.WriteLine();
            return(true);
        }
コード例 #2
0
        static async Task GetEmbedInfo()
        {
            EnsureBasicParams(EnsureExtras.WorkspaceCollection | EnsureExtras.WorspaceId);
            int?index = -1;

            IList <Report> reports = await GetReports(workspaceCollectionName, workspaceId);

            if (reports == null || !reports.Any())
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("No report found in Workspace {0} from WorkspaceCollection {1}", workspaceId, workspaceCollectionName);
                return;
            }

            Console.WriteLine("Existing reports:");
            for (int i = 0; i < reports.Count; i++)
            {
                ConsoleHelper.WriteColoredStringLine(string.Format("{0} report name:{1}, Id:{2}", i + 1, reports[i].Name, reports[i].Id), ConsoleColor.Green, 2);
            }
            Console.WriteLine();

            index = userInput.EnsureIntParam(index, "Index of report to use (-1 for last in list)");
            if (!index.HasValue)
            {
                index = -1;
            }
            if (!index.HasValue || index.Value <= 0 || index.Value > reports.Count)
            {
                index = reports.Count;
            }

            Report report     = reports[index.Value - 1];
            var    embedToken = PowerBIToken.CreateReportEmbedToken(workspaceCollectionName, workspaceId, report.Id);

            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine("Embed Url: {0}", report.EmbedUrl);
            Console.WriteLine("Embed Token: {0}", embedToken.Generate(accessKeys.Key1));
            var embedToken2 = PowerBIToken.CreateReportEmbedToken(workspaceCollectionName, workspaceId, report.Id);

            embedToken2.Claims.Add(new System.Security.Claims.Claim("type", "embed"));
            Console.WriteLine("Fixed Token: {0}", embedToken2.Generate(accessKeys.Key1));
        }