在C#中开发EA BaselingMerge工作流
本文关键字:BaselingMerge 工作流 EA 开发 | 更新日期: 2023-09-27 18:25:54
我想开发一个工作流,通过GUI:在EA中合并基线
- 右键单击软件包并选择"软件包控制">"软件包基线"(STRG+ALT+B)
- 单击"将模型与文件进行比较"
- 选择XMI文件
- 经过比较
- 选择包(在"模型元素"中,而不是在"项目浏览器"中)>右键单击->"从基线合并(带选项)"
我认为我必须使用以下方法(如EA Class API中描述的),但我不知道如何使用这些方法:
EA.App eaApp = new EA.App();
EA.Repository repository = null;
if (eaApp.Repository.OpenFile2(/*FileOrDB*/"...", /*User*/"...",/*PWD*/"...")){
repository = eaApp.Repository;
repository.GetProjectInterface().DoBaselineCompare(...);
repository.GetProjectInterface().DoBaselineMerge(...);
}
有人能给我发一个在C#中执行这些步骤的例子吗?
查看两个DoBaseLine的文档。。。方法似乎只能将这些方法与实际存储在(或另一个)模型中的基线一起使用。API中没有允许您与xmi文件进行比较的内容。
但有一个变通办法。您可以将xmi文件导入到另一个模型中,并使用ProjectInterface.CreateBaseline
或ProjectInterface.CreateBaselineEx
为其创建基线。
一旦你有了这个基线,你就可以将它与模型中的包进行比较并合并。