我正在尝试在需要Observable集合(实现 INotifyCollectionChanged
接口)的WPF中使用Fluent-Nibernate。
在 uNHAddins:NHibernate的非官方附加组件上,我发现了
uNhAddIns.WPF.Collections.Types.ObservableListType<T>
实现了 INotifyCollectionChanged
接口。可以在 Fluent-Nibernate 中进行如下配置:
namespace FluentNHibernateTutorial.Mappings
{
public class StoreMap : ClassMap<Store>
{
public StoreMap()
{
Id(x => x.Id);
Map(x => x.Name);
HasManyToMany(x => x.Products)
.CollectionType<uNhAddIns.WPF.Collections.Types
.ObservableListType<Product>>()
.Cascade.All()
.Table("StoreProduct");
}
}
}
有人知道如何使用Fluent-NHibernate实现一个Convention,始终将ObservableListType作为默认的IList实现吗?
更新:完美的解决方案应该是使用Fluent-NHibernate-Automapper进行替换。