问题描述
在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-预览
解决方法
好吧,我也很痛苦,几乎没有文档就试图使它在.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
在您检查时以及如果您像
database.Model.Tables
得到的对象引用未设置为database.Model.get
但是,如果您像我在最后一行代码中所做的那样强制转换,则可以正常工作!