使用 NHibernate 实体,您需要覆盖 Equals 和 GetHashCode。重写 == 运算符以使用 .Equals 实现是一个好主意吗?
问问题
1707 次
2 回答
5
Equals()
是的,operator==
保持一致是更通用的 .NET“最佳实践” GethasCode()
。
于 2009-04-17T15:45:39.610 回答
-2
为什么您认为在使用 NHibernate 时需要覆盖 Equals 和 GetHashCode?NHibernate 保证在同一 ISession 中访问的任何实体的实体平等。请参阅文档中的考虑对象身份。
编辑添加:在重新阅读问题并进行一些谷歌搜索之后,我不得不承认我不知道等式运算符(==)可以在 C# 中被覆盖。
于 2009-04-17T15:50:23.733 回答