我是靠谱客的博主 喜悦黑猫,最近开发中收集的这篇文章主要介绍Power BI 实现实时更新Streaming Dataset,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、在PowerBI portal端需要准备的操作:

1. https://app.powerbi.cn 登陆,点击左侧My Workspace,你需要有一个账号

2. 选入Datasets,点击页面右上角的Creat,添加Streaming dataset

3.添加API{ }

4.记录Push URL , 这个后续作为post data的URL

 

二、在c#代码中的操作:

  1. realTimePushURL 改成上文你的Push URL
  2. 一定要注意数据结构 那个postData变量的结构要和streaming dataset的结构一致
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Net;
    using System.Text;
    using System.Threading.Tasks;
    using System.IO;
    namespace StreamDataToPowerBI
    {
    class Program
    {
    // Paste your own push URL below
    // e.g. https://api.powerbi.com/beta/2b958e42-b81e-441d-af13-801621ce8401/datasets/a5a15fd1-8cb6-4527-b2e6-f22f2a274d4d/rows?key=apsBX1ef%2F8a7ToL2xxxxxxxxxxxZeGATSyRYerZKpnu%2FbE2g2yDM0%2Bs4cDW9mqu5zKoGcQ27vJuh0Huw%3D%3D
    private static string realTimePushURL = "** paste your push URL here **";
    static void Main(string[] args)
    {
    while (true) {
    try
    {
    // Declare values that we're about to send
    String currentTime = DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ss.fffZ");
    //2017-11-03T06:23:35.521Z
    Random r = new Random();
    int currentValue = r.Next(0, 100);
    // Send POST request to the push URL
    // Uses the WebRequest sample code as documented here: https://msdn.microsoft.com/en-us/library/debx8sh9(v=vs.110).aspx
    WebRequest request = WebRequest.Create(this.PostUri);
    request.Method = "POST";
    string postData = String.Format("[{{ "time": "{0}", "value": {1}}}]", currentTime, currentValue);
    Console.WriteLine(String.Format("Making POST request with data: {0}", postData));
    // Prepare request for sending
    byte[] byteArray = Encoding.UTF8.GetBytes(postData);
    request.ContentLength = byteArray.Length;
    // Get the request stream.
    Stream dataStream = request.GetRequestStream();
    // Write the data to the request stream.
    dataStream.Write(byteArray, 0, byteArray.Length);
    // Close the Stream object.
    
    dataStream.Close();
    // Get the response.
    WebResponse response = request.GetResponse();
    // Display the status.
    Console.WriteLine(String.Format("Service response: {0}", ((HttpWebResponse)response).StatusCode));
    // Get the stream containing content returned by the server.
    dataStream = response.GetResponseStream();
    // Open the stream using a StreamReader for easy access.
    StreamReader reader = new StreamReader(dataStream);
    // Read the content.
    string responseFromServer = reader.ReadToEnd();
    // Display the content.
    
    Console.WriteLine(responseFromServer);
    // Clean up the streams.
    
    reader.Close();
    dataStream.Close();
    response.Close();
    }
    catch (Exception ex)
    {
    Console.WriteLine(ex);
    }
    // Wait 1 second before sending
    System.Threading.Thread.Sleep(1000);
    }
    }
    }
    }

三、在portal中设置展示结果,大致实现过程:

1. 先创建一个dashboard

2. 点击右上角的Add tile

 

3. 选定我们的streaming data tile 

 

4. 执行相应的添加即可

5.实时展示结果:(实时更新显示C#代码发来的random数据)

 

转载于:https://www.cnblogs.com/yangwenbo214/p/9836348.html

最后

以上就是喜悦黑猫为你收集整理的Power BI 实现实时更新Streaming Dataset的全部内容,希望文章能够帮你解决Power BI 实现实时更新Streaming Dataset所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部