对于我需要将包与另一个模型包进行比较,我需要在EA中将一个基线从一个模型导入另一个模型。我知道EA没有为导入基线提供任何直接API调用。
尝试使用*DoBaselineCompare*
,但它不起作用。
所以我使用下面的代码从一个包中导出基线
Byte[] byteBLOBData = new Byte[0];
byteBLOBData = Convert.FromBase64String(sValues);
Stream data = new MemoryStream(byteBLOBData);
Stream otherData = new MemoryStream();
ZipArchive archive = new ZipArchive(data);
foreach (ZipArchiveEntry entry in archive.Entries)
{
if (entry.Name == "str.dat")
{
otherData = entry.Open();
}
}
MemoryStream ms = new MemoryStream();
otherData.CopyTo(ms);
byte[] bytesInStream = ms.ToArray(); // simpler way of converting to array
XmlDocument doc = new XmlDocument();
string sss = Encoding.Unicode.GetString(bytesInStream);
doc.LoadXml(sss);
doc.Save(@"C:\ExportedBaseline.xml");
它在给定路径中成功导出。 我只是尝试在包中手动导入基线以检查它是否有效,并且它的工作正常。现在我需要以编程方式执行此操作。
我尝试从BinContent列插入一行新的现有blob数据。它已插入并显示在Baselines屏幕中 - 但无法从插入的基线恢复或导入\ export
任何人都可以建议一种以编程方式将基线导入包的方法。