You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用.NET中MPXJ库更新MS Project文件链接并转JSON遇阻求助

解决MPXJ更新MS Project任务链接(F9刷新)无效的问题

updateStructure()方法仅用于刷新项目内部结构(如任务层级、日历关联映射),无法触发MS Project中按F9执行的完整项目计算(包括任务依赖重算、日期更新、工时/成本计算等)。要实现等效于F9的刷新效果,需使用MPXJ的ProjectCalculation类执行项目计算,具体操作如下:

修正后的代码示例

ProjectReader reader = new UniversalProjectReader();
ProjectFile projectFile = reader.read("inputFile.mpp");

// 遍历任务(保留原逻辑)
foreach (Task task in projectFile.Tasks)
{
   Console.Out.WriteLine(task.Name);
}

// 执行等效于F9的项目计算
var calculationConfig = new CalculationConfig();
// 可按需开启/关闭特定计算项,默认配置已覆盖F9核心计算逻辑
calculationConfig.SetCalculateTaskDates(true);
calculationConfig.SetCalculateTaskDependencies(true);
calculationConfig.SetCalculateWork(true);

ProjectCalculation.Calculate(projectFile, calculationConfig);

// 写入JSON文件
ProjectWriter writer = ProjectWriterUtility.getProjectWriter("outputFile.json");
writer.write(projectFile, "outputFile.json");

关键说明

  • CalculationConfig可精细控制计算范围,比如仅计算任务日期或依赖,默认配置已覆盖F9的核心计算逻辑
  • UniversalProjectReader默认会自动加载任务依赖关系,无需额外配置即可保证计算基础数据完整
  • 若涉及跨项目链接,需额外配置外部项目加载路径,单项目场景无需处理

内容的提问来源于stack exchange,提问作者Андрей Михалевич

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 23:50:02