У меня есть объект, который имеет много источников данных.nhibernate mapping по коду, объект сопоставления со списком объектов значений
public class MyData
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual IList<DataSource> Sources { get; set; }
public MyData(){
Sources = new List<DataSource>();
}
}
и у меня есть класс DataSource, который представляет объект ценностного MyData объекта
public class DataSource
{
public enum SourceEnum { dataOneSrc = 1, dataTwoSrc = 2}
public virtual SourceEnum Source { get; set; }
public virtual string InternalRefNr { get; set; }
}
Я использую NHibernate ОРМ и его отображение с помощью кода подхода. Итак, я сопоставил объект значения, используя эту ссылку, как ref. // http://lycog.com/programming/nhibernate-32-mapping-code-component-mapping/
public static Action<IComponentMapper<DataSource>> Mapping()
{
return c =>{
c.Property(p => p.Source);
c.Property(p => p.InternalRefNr, m =>
{
m.Length(255);
});
};
}
и отображение сущностей с использованием
public MyData()
{
...
Bag<DataSource>(x => x.Sources,
c => { },
r =>{ r.OneToMany();}
);
}
Я получаю Nhibernate.MappingException
{ "Ассоциация ссылка некартированного класса: My.Model.DataSource"}
Но не это исключение на самом деле Чисто? Вам просто нужно отобразить «DataSource».Вот так –
Я сопоставил DataSource выше, public static Action> Сопоставление() –
user1765862
Вы можете отправить сообщение в качестве ответа, как бы вы могли сопоставить объект со списком объектов значений – user1765862