通过c#加载项在企业架构师中创建只读标记值

时间:2017-03-23 09:20:23

标签: c# add-in enterprise enterprise-architect

我目前正在处理加载项,我需要通过代码创建只读标记值。 添加标记值的默认方式Element.TaggedValues.AddNew(“Value”,“”)仅创建string类型的标记值。 我读到定义Type = Const创建只读标记值,但是当我尝试使用Element.TaggedValues.AddNew(“Value”,“Const”)时,它只创建string类型的标记值。 请帮忙。谢谢。

2 个答案:

答案 0 :(得分:0)

添加标记值和添加标记值定义之间存在差异。

要添加标记值定义,请使用

之类的内容
EA.PropertyType taggedValueType = EA.Repository.PropertyTypes.AddNew("myTagName","");
taggedValueType.Description = "some description";
taggedValueType.Detail = "Type=Const;"+Environment.Newline+"Default=Val;";
taggedValueType.Update();

然后使用

添加您的类型的标记值
Element.TaggedValues.AddNew("myTagName","")

答案 1 :(得分:0)

这些预定义的标记值只能在"默认标记值"中创建。对话而不是单独的。创建此类电视后,您可以通过

将其添加到元素中
tv = e.TaggedValues.AddNew("nameOfTheConstTV", "")
tv.Update()

我还没有找到通过API创建此类默认电视的方法。一旦您尝试提供多行详细信息,您就会得到空的详细信息。离开换行也会产生空洞的细节。 Scrappy EA :-(所以你必须手动创建它们。

编辑以上约束似乎仅适用于使用API​​的脚本语言。