今天遇到了在nhibernate中出现重名实体时候报错的问题,具体报错为:
duplicate import:
QREQUISITIONCHANGE refers to both DHC.EAS.Entity.QREQUISITIONCHANGE, Eas.Entity, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null and DHC.EAS.Entity.WebService.QREQUISITIONCHANGE, Eas.Entity, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null (try using auto-import="false")
通过网上查阅资料,得知nhibernate提供了一个 UseAutoImport
属性,默认情况下为true,会自动找到例如名为 QREQUISITIONCHANGE 的实体,并将其命名空间补全,如:DHC.EAS.Entity.WebService.QREQUISITIONCHANGE 或者:
DHC.EAS.Entity.QREQUISITIONCHANGE
解决方案:将其中任何一个重名的实体的UseAutoImport
属性设置为false