0

模型属性上的属性设置的目的是什么?

我已经阅读了关于 subproducer 并希望实现这里描述的内容:http: //www.softfluent.com/product/codefluent-entities/knowledge-center/how-to-add-attributes-to-codefluent-generated-特性

尝试在属性上设置属性会修改 XML,但不会被 BOM 生产者选择,有什么原因吗?

在下面的示例中,我希望在 MyProperty 属性上方有一个装饰,但它没有发生。

感谢您的回答,

<cf:property name="MyProperty" typeName="{0}.Namespace.MyEntity" relationSchema="Schema">
      <cf:attribute name="Newtonsoft.Json.JsonIgnore" context="Property" class="">
        <cf:argument name="arg1" expression="value1" />
      </cf:attribute>
    </cf:property>
4

1 回答 1

1

属性由 BOM 生产者使用。但是,您设置了一个context不适合您的需要。事实上,该属性是一个关系属性,因此您必须使用context="ToOneRelationKeyProperty, ToOneRelationProperty, ToManyRelationProperty, RelationProperties"(您可以只保留其中一个值)或默认值。

<cf:entity name="Customer">
  <cf:property name="Id" key="true" />
  <cf:property name="Orders" typeName="OrderCollection">
    <cf:attribute name="Newtonsoft.Json.JsonIgnore" class="" context="RelationProperties">
      <cf:argument name="arg1" expression="value1" />
    </cf:attribute>
  </cf:property>
</cf:entity>

BOM 生产者生成:

[Newtonsoft.Json.JsonIgnore(arg1=value1)]
public Model1.OrderCollection Orders
于 2016-04-26T17:40:41.477 回答