【问题标题】:Programmatically open an Excel document with connection to a Tabular Model以编程方式打开连接到表格模型的 Excel 文档
【发布时间】:2019-12-22 16:04:58
【问题描述】:

我想以编程方式创建一个电子表格,并在用户单击某个按钮时连接到我的表格模型,该模型存在于 Azure 分析服务器中。类似于 Azure 中用于查看表格模型的选项,它创建一个 odc 文件,您可以在 Excel 中打开该文件。我的应用程序托管在 Azure 上,我使用 .NET Core 2.2 作为后端。

我完全不知道如何才能做到这一点。有没有人设法实现这样的功能?

【问题讨论】:

    标签: excel azure asp.net-core ssas-tabular azure-analysis-services


    【解决方案1】:

    最简单的方法是生成并交付一个 odc 文件,该文件将使用 Excel 打开。

    首先根据文档创建一个指向您的 AAS 服务器的 .odc 文件:Create an Office Data Connection file

    然后将该 .odc 文件添加到您的网络应用程序,并通过如下控制器提供它:

    using Microsoft.AspNetCore.Hosting;
    using Microsoft.AspNetCore.Mvc;
    using System.IO;
    using System.Text;
    
    namespace WebApplication4.Controllers
    {
        [Route("api/[controller]")]
        [ApiController]
        public class OdcController : ControllerBase
        {
            private IHostingEnvironment hostingEnvironment;
            public OdcController(IHostingEnvironment env)
            {
                hostingEnvironment = env;
            }
            // GET api/values
            [HttpGet]
            public ActionResult Get()
            {
                var fp = Path.Combine(_env.ContentRootPath, "model.odc");
                var odcText = System.IO.File.ReadAllText(fp);
                //optionally modify odcText
                return File(Encoding.ASCII.GetBytes(odcText), "application/octet-stream", "model.odc");
            }
    
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多