3

我想使用 PHP 库 JMSSerializer 为同一实体提供两种不同的表示形式,这可以通过其组功能轻松实现。

问题是我有一个表示,其中子对象的属性是内联的,一旦不是。如果它以某种方式工作,那就太好了:

<?xml version="1.0" encoding="UTF-8"?>
<serializer>
    <class name="SomeEntity">
        <property name="structure" type="SomeOtherEntity" groups="group1" inline="true"/>
        <property name="structure" type="SomeOtherEntity" groups="group2"/>
    </class>
</serializer>

我想以这种方式完成的是,SomeEntity可以使用group1withSomeOtherEntity内联进行序列化,并且group2ifSomeOtherEntity不应该内联,但这似乎不起作用(我猜 name 属性有点独特)。

一种解决方案是结合 a 引入另一种方法VirtualProperty,但随后我将不得不触及我希望避免的类,因为它是一个纯粹的序列化问题。

任何更好的想法如何解决这个问题?

4

0 回答 0