微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

NHibernate 动态更新/插入不影响动态组件

如何解决NHibernate 动态更新/插入不影响动态组件

我在 .Net 5 环境中使用 Nhibernate 5.3.5,其中的类使用动态更新和动态插入。这很有效,因为它大大减少了发送到数据库的“column=null”的数量

我的问题是要避免在插入和更新这些类的动态组件标签时出现相同的“column=null”重载,但它不起作用。这似乎是一个错误/疏忽,尽管我希望我只是设置错误

类映射:

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
  <class name="MyClass,MyNamespace" table="MyTable" dynamic-update="true" dynamic-insert="true">
    <cache region="MainCache" include="all" usage="read-write" />
    <id name="Id" column="Id">
      <generator class="hilo" />
    </id>
    <many-to-one name="ManyToOne" column="[MyReferencedColumn]" />
    <property name="MyProperty" column="[MyPropertyColumn]" />
    <dynamic-component name="DynamicProperties">
      <many-to-one name="MyDynamicProperty" column="[MyDynamicColumn]" class="ReferencedClass" />
    </dynamic-component>
  </class>
</hibernate-mapping>

此映射导致插入如下所示:

insert into MyTable(Id,MyDynamicColumn) Values(123,null)

当我希望它看起来像这样时:

insert into MyTable(Id) Values(123)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。