1

在 Azure 函数中,我已连接到 power bi 服务,并且可以使用 FindByName 或 GetByName 获取数据集,但 Database.Model 值为 null。这意味着我无法刷新数据集或更新任何内容。

调试时可以看到工作区中的所有数据集。任何帮助将不胜感激。谢谢

using (Server as_server = new Microsoft.AnalysisServices.Tabular.Server())
{
    as_server.Connect(connectionString);
    Microsoft.AnalysisServices.Tabular.Database db = as_server.Databases.FindByName(database);
    Model m = db.Model;
    //my model m is allways null pointless to go on
}

我正在使用 Microsoft.AnalysisServices.AdomdClient.NetCore.retail.amd64 19.9.0.1-Preview 和 Microsoft.AnalysisServices.NetCore.retail.amd64 19.9.0.1-Preview

4

1 回答 1

3

好的,我也很难用很少的文档让它在 .net 核心中工作,我不知道为什么下面的工作,但这里是获取表格模型的代码

using (Microsoft.AnalysisServices.Server server = new Microsoft.AnalysisServices.Server())
{
    server.Connect(connectionString);  
    Microsoft.AnalysisServices.Database database = server.Databases.GetByName("adventureworks");
    Microsoft.AnalysisServices.Tabular.Model  model = database.Model as Microsoft.AnalysisServices.Tabular.Model;
}

请注意,database.Model当您检查它时它是 null 并且如果您直接使用它,就像 database.Model.Tables您得到 Object reference not set to an object of an object for database.Model.get一样

但是,如果你投射它,就像我在最后一行代码中所做的那样,突然就可以了!

于 2020-10-01T21:37:53.090 回答