c# - NHibernate 映射到另一个不在 ID 上的对象

标签 c# .net xml nhibernate

好的,这里是 NHibernate 问题。我有两个对象,我想相互映射。我有“Vendor”和“Township”……现在这两个应该通过邮政编码而不是 ID 链接。我已经做过很多次 btw objects using id 但从来没有像这样。

我遇到的问题是邮政编码在存储为字符串时不知何故被转换为整数(前导零被删除)?或者它正在使用来自其中一个对象的 ID。

这是我的错误:

“/HQWebsite”应用程序中的服务器错误。 不存在具有给定标识符的行[HQData.Objects.Township#7922]

也不是我看的数据库里的数据,数据是准确的。

这是我映射供应商 xml 文件的方式:

<many-to-one name="_Township" column="ZipCode" foreign-key="ZipCode" class="HQData.Objects.Township, HQData" />

这是乡镇的属性(property):

   <set name="_Vendors" cascade="all">
      <key  column="ZipCode" foreign-key="ZipCode"/>
      <one-to-many 
         class="HQData.Objects.Vendor, HQData"/>
    </set>

有没有人熟悉 NHibernate 并且以前做过这个?谢谢!

最佳答案

这已经修复了!对于多对一关系,我需要 Vendor .xml 文件中的 property-ref 属性。

谢谢!

关于c# - NHibernate 映射到另一个不在 ID 上的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/177422/

相关文章:

c# - 使用 .NET 进行低级文件访问

c# - 更新失败 - Entity Framework Core

C# 查询 Windows 服务

c# - 在 Winforms 和 .net 中难以在设计时保留引用内部属性的集合

.net - 哪个 Amazon S3 .NET 库最有用且最高效?

php - 需要帮助解析 xml

c# - 在 visual studio 2015 中停止正在进行的调试

c# - 两种声明变量的方式是否相同?

android - 在Android编程的xml文件中包含标签

java - 当我声明为浅色主题时,为什么我会得到深色主题?