简介

在将报表集成到应用的步骤 2获取 Power BI 报表)中,你将获取 Power BI 报表。 在此步骤中,将报表加载到 IFrame

若要将报表加载到 IFrame,请将 IFramesrc 属性设置为报表embedUrl 属性,并创建 onload 处理程序以使用访问令牌发布消息,从而访问报表视觉对象。 下面是用于将报表加载到 IFrame 的 JavaScript 代码。

将报表加载到 IFrame

//Configure IFrame for the report after you have an Access Token. See Default.aspx.cs to learn how to get an Access Token
window.onload = function () {
    if ("" != document.getElementById('MainContent_accessToken').value)
    {
        var iframe = document.getElementById('iFrameEmbedReport');

        // To load a Report do the following:
        // Set the IFrame source to the EmbedUrl from the Get Reports operation
        iframe.src = document.getElementById('MainContent_ReportEmbedUrl').value;

        // Add an onload handler to submit the access token
        iframe.onload = postActionLoadReport;
    }
};

// Post the access token to the IFrame
function postActionLoadReport() {

    // Construct the push message structure
    // this structure also supports setting the reportId, groupId, height, and width.
    // when using a report in a group, you must provide the groupId on the iFrame SRC
    var m = {
        action: "loadReport",
        accessToken: document.getElementById('MainContent_accessToken').value
    };
    message = JSON.stringify(m);

    // push the message.
    iframe = document.getElementById('iFrameEmbedReport');
    iframe.contentWindow.postMessage(message, "*");;
}

如果你下载并运行集成报表示例,示例外观将类似如下。

结论

在本演练中,你学习了如何通过获取报表并将其加载到 IFrame,将报表集成到应用。 可下载完整的集成报表示例,它显示了用于将报表嵌入到 ASP.NET Web 应用的所有部件。 还可查看完整的将报表集成到应用代码清单

另请参阅

注册 Power BI
将报表集成到应用演练
集成报表示例
配置集成报表示例
获取报表操作
更多问题? 尝试参与 Power BI 社区