c# - 使用 .NET 更新 SSAS 表格模型的 M 表达式时未保存到数据库的更改
问题描述
场景:我们有一个带分区的表,我们必须使用 .NET 更新分区查询
我们使用下面的代码将现有的 M 表达式替换为新的,但更改不会在数据库级别更新(分析表)。此代码中是否存在任何语法错误或问题?
TOA.Partition partition = m.Tables.Find(Table).Partitions[1];
OverrideCollection oc = new OverrideCollection
{
Partitions =
{
new PartitionOverride
{
OriginalObject =partition,
Source = new MPartitionSourceOverride
{
Expression=expressions
}
}
}
};
var listOc = new List<OverrideCollection>();
listOc.Add(oc);
partition.RequestRefresh(TOA.RefreshType.Add, listOc);
// m.Tables[Table].Partitions[1].Refresh(TOA.RefreshType.Full, listOc); //it is not working
db.Update(UpdateOptions.ExpandFull);
db.Model.SaveChanges();
m.SaveChanges();
TOA.Partition partition1 = m.Tables.Find(Table).Partitions[1];
解决方案
推荐阅读
- amcharts - 如何在 Amcharts Treemap 中为列模板添加样式?
- java - 如何从 json 字符串中删除键名
- image-processing - 构建编码-解码图像的分层模型
- java - JAVA创建的JSP页面出现乱码
- r - 使用 gganimate 构建堆叠直方图
- python - Python append 函数没有按预期工作
- javascript - 从 Materialize 多个下拉列表中取消选择除第一个之外的所有元素
- mysql - 用于获取表中多个不同项目的最新记录的 MySQL 查询
- node.js - 我如何从 child_process.execFile 获得结果?
- python - 如何在python的html文件中写入json数据