如何解决保存模型时的 EMF 悬空参考
我已经用 EMF 创建了一个模型,我希望能够使用编辑器保存我的模型并在以后打开它。 例如,假设我的模型有 3 个类:A、B、C 和 R。R 是根父级。类 C 有一个对 A 的引用,一个对 B 的引用。 当我编辑模型时,一切正常。但是如果我想将我的文件保存到另一个位置,我可以打开它,但我不能再保存它,而不会收到一条错误消息,告诉我我的 C 对象中的引用是悬空引用。 保存时的xml文件是这样的,供我参考:
<refToA ="//@CompElement.0/@composit/@parts.0">
我试图在我的 ecore 文件中将 containsable 设置为 true。悬空引用消失,但在保存后,如果我触摸 B 的属性,则更改不适用于引用,因为现在我有两个 B 对象。
如何正确制作参考并保存?
解决方法
我的模型有 3 个类:A、B、C 和 R
你的意思是你的元模型有 3 个 EClasses/元类 A、B、C 和 R。
R 是根父级
模型的根元素是 R 类型。 如何包含 A、B 和 C?
当我编辑模型时,一切正常。但是如果我想把我的文件保存到另一个位置,我可以打开它但我不能再保存了
我怀疑简单地将您的资源保存到某个位置或其他位置是否会对您的模型产生重大影响。您如何编辑它并将其保存到另一个位置?
,我找到了解决方案。 在我的 XMI 文件模型中保存如下:
<R>
<C refA... refB...>
<\C>
<A><\A>
<B><\B>
<\R>
像这样保存A和B对象后需要放置引用:
<R>
<A><\A>
<B><\B>
<C refA... refB...>
<\C>
<\R>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。