2010-10-16 3 views
0

У меня есть объект с именем party и три других объекта, наследуемых от этого объекта, с использованием hibernate az orm. У меня проблема с литой стороны из этих объектов. хотя я использую функцию not.lazyload(), но я вижу, что partyProxy хочет быть отправлен на объект отдела, а не на точный партийный объект. поэтому я вижу: Невозможно лить объект типа «PartyProxybc26f81f729145c49bc14594bb84cb57», чтобы напечатать «Domain.OrganizationStructure.Department» эта проблема не случится с этими двумя другими объектами, которые унаследованы от объекта-участника. что может быть моей проблемойпроблема с отображением спящего режима

ответ

0

PartyProxy будет подклассом Party. Вероятно, вы пытаетесь присвоить его переменной типа Department. Было бы полезно, если вы разделяете фрагменты кода/отображения

0

здесь код я использую:

класс AccountabilityMap общественности: ClassMap { общественного AccountabilityMap() { схемы ("organizationstructure"); Not.LazyLoad(); Id (p => p.Id);

 References(p => p.AccountabilityType) 
      .Not.Nullable(); 

     References(p => p.Child) 
      .Column("ChildPartyId") 
      .Not.LazyLoad() 
      .Not.Nullable(); 

     References(p => p.Parent) 
      .Column("ParentPartyId") 
      .Not.LazyLoad() 
      .Not.Nullable(); 
    } 
} 

PartyMap общественный класс: ClassMap { общественного PartyMap() { схемы ("organizationstructure");

 Id(p => p.Id); 

HasMany (р => p.Children) .LazyLoad() .Cascade.AllDeleteOrphan() .Inverse() .KeyColumn ("ParentPartyId");

 HasMany(p => p.Parents) 
      .LazyLoad() 
      .Inverse() 
      .Cascade.AllDeleteOrphan() 
      .KeyColumn("ChildPartyId"); 

}}

общественного класса DepartmentMap: SubclassMap { общественного DepartmentMap() {

 Schema("organizationstructure"); 
     KeyColumn("PartyId"); 

     Map(p => p.DepartmentType) 
      .Not.Nullable() 
      .CustomSqlType("tinyint") 
      .CustomType<DepartmentType>() 
      .Length(1); 

     HasManyToMany(p => p.DepartmentGroup) 
      .Table("DepartmentGroupToDepartment") 
      .Schema("formation"); 

    } 
} 

выборки отделов: _department = Родители // ===== > родители: IList . Где (p => p.AccountabilityType.Id == (int) AccountabilityTypeDbId.ParentDepartmentOfPerson) .Выберите (p => p.Parent) .Cast() .SingleOrDefault();

+0

, пожалуйста, добавьте это в исходный вопрос. –

Смежные вопросы