掲示板一覧 - トピック一覧 EA API API経由でTemplate Parameter追加時に「制約」・「既定値」が設定できない |
フラット表示 | 前のトピック | 次のトピック |
投稿者 | トピック |
---|---|
umesan | 投稿日時: 2019-4-4 13:23 |
EA Administrator 投稿: 1510 |
API経由でTemplate Parameter追加時に「制約」・「既定値」が設定できないサポート宛にいただきましたご指摘の要約です。
○ご指摘 [現象] APIから、クラス要素にTemplate Parameterを追加し、「制約(Constraint)」・「既定値(Default)」に値を設定してもEAを開いて確認すると、設定されていない。 [再現ソースコード] var element = package.Elements.AddNew(“TestClass”, "Class") as EA.Element; element.Update(); var template_parameter = element.TemplateParameters.AddNew("T", "String") as EA.TemplateParameter; template_parameter.Constraint = "aaa"; template_parameter.Default = "bbb"; template_parameter.Update(); element.TemplateParameters.Refresh(); element.Update();// ← ★ ★の箇所でelement.TemplateParameters.GetAt(0)を取得すると、「Constraint」、「Default」の設定値が空になっているようです。 〇回答 この度はご迷惑をおかけしており申し訳ございません。頂きました現象につきまして、弊社環境でも再現させることができました。EA本体のバグと推測いたします。開発元に連絡するように致します。 TemplateParameterを追加後、一旦Update()を行い、その後 TemplateParameters から取得した TemplateParameter に対し、Constraint 等の設定を行うと回避できるようです。 頂きましたソースコードに対し変更を行った以下ソースコードで、弊社環境では回避できました。 var template_parameter = element.TemplateParameters.AddNew("T", "String") as EA.TemplateParameter; //template_parameter.Constraint = "aaa"; // コメントアウト //template_parameter.Default = "bbb"; // コメントアウト template_parameter.Update(); element.TemplateParameters.Refresh(); template_parameter = element.TemplateParameters.GetAt(0); template_parameter.Constraint = "aaa"; template_parameter.Default = "bbb"; template_parameter.Update(); お手数をおかけいたしますが、修正までは上記で回避頂けますようお願いいたします。 |
フラット表示 | 前のトピック | 次のトピック |
題名 | 投稿者 | 日時 |
---|---|---|
» API経由でTemplate Parameter追加時に「制約」・「既定値」が設定できない | umesan | 2019-4-4 13:23 |