Предположим, у меня есть класс с коллекцией неизменных типов, которые я хотел бы карту с индивидуальным ICompositeUserTypeNHibernate: Как отобразить сумку с ICompositeUserType
public class Foo
{
public long Id { get; protected set; }
public virtual IList<Bar> Bars { get; set; }
}
//immutable
public class Bar
{
private _blah;
private _halb;
public Bar(string blah, string halb)
{
_blah = blah; _halb = halb;
}
public Blah { get { return _blah; } }
public Halb { get { return _halb; } }
}
Как настроить отображение мешок на Foo, чтобы использовать составной тип пользователя, чтобы пользовательский тип мог при необходимости вызвать конструктор?
Я пробовал это, но тип не доступен на составном элементе.
<bag name="Bars" table="FooBars" lazy="true">
<key column="FooId" foreign-key="FK_Bars_FooId" />
<composite-element class="Doman.Bar, Domain" type="Integration.UserTypes.BarCompositeUserType, Integration">
<property name="Blah">
<column name ="BarBlah" sql-type="char(2)"/>
</property>
</composite-element>
</bag>
Однако, это не будет работать, потому что NHibernate не распознает «типа» атрибут «Композит-элемент»
Как я карту сумку с ICompositeUserType? (Я использую NHibernate 3.2)