2010-01-22 3 views
1

я есть это отображение:FluentNhibernate HasMany с компонентом

HasMany<ClassA>(ot => ot.AList) 
     .Table("XPTO") 
     .KeyColumn("IDXPTO") 
     .Component(m => 
         { 
          m.Map(a=> a.X, "X"); 
          m.Map(x=> x.Y, "Y"); 
         }) 
     .Cascade.AllDeleteOrphan(); 

я получаю сообщение об ошибке о том, что «относится к классу неотображенного CLASSA», но я не нужно отобразить его. я видел другие примеры в Интернете с аналогичными сопоставлениями, и у них нет этой проблемы ...

Если я создаю класс класса для класса А только с идентификатором, то его работы, но у модели данных будет 1 ненужная таблица для CLASSA только с идентификатором, потому что свойство X и Y будут отображаться на столе XPTO ...

ответ

0

нормально, ошибка неотображенного класса не было связано с hasmany, но с другим имуществом, которое я имел там, которое ссылалось на ClassA на взаимно однозначное. Таким образом, у меня был один-к-одному ретатиоши для класса А и один-ко-многим, первый вызвал ошибку. Я решил, что один к одному тогда это сработало.

1

отображение Try его с указанием типа для HasMany:

HasMany(ot => ot.AList) 
    .Table("XPTO") 
    .KeyColumn("IDXPTO") 
    .Component(m => 
        { 
         m.Map(a=> a.X, "X"); 
         m.Map(x=> x.Y, "Y"); 
        }) 
    .Cascade.AllDeleteOrphan(); 
Смежные вопросы