2
Как я могу сопоставить эти Сущности, используя отображение-на-код:Отображение NHibernate по коду: Как сопоставить IDictionary?
public class Foo
{
public virtual IDictionary<Bar, string> Bars { get; set; }
}
public class Bar
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
}
Я нашел this thread, но не отображает объект, только простые типы. Я перепробовал много отображений, в том числе Автоотображение:
Map(x => x.Bars,
m =>
{
m.Key(k => k.NotNullable(true));
m.Cascade(Cascade.All);
},
Но большинство из них бросают эти две ошибки:
- Foreign ключ (Bars [IDX])) должны иметь одинаковое число столбцов в качестве ссылочного первичного ключа (Bars [FooId, idx]).
- Ассоциация из таблицы FoosToStrings относится к классу unmapped: System.String.
Любая помощь будет высоко оценена. Благодарю. :)
Это приводит к индекс-многие-к-любому отображению, которое я считаю, есть некоторые проблемы в FluentNHibernate. См. Этот связанный вопрос с обходным решением. http://stackoverflow.com/questions/8542298/fluent-nhibernate-index-many-to-many. –
Я не использую Fluent. Я использую отображение по коду. – Yogesh
Извинения. Необходимо более внимательно прочитать вопрос. –