У меня есть класс, ссылающийся на (шаблон) текст, который имеет для каждого арендатора и каждого варианта использования несколько возможных текстов
class Class1
{
[...]
public virtual Text TitleName { get; set; }
}
class Text
{
public virtual int TenantId { get; set; }
public virtual string Key { get; set; }
public virtual int Number { get; set; }
public virtual string Value { get; set; }
}
К сожалению, структура таблицы выглядит как
Table Class1
...
textnumber int,
Table Text
tenant int,
key varchar (10),
number int,
pkey(tenant, key, number);
, поскольку Class1всегда ссылается на tenant = 0 (все арендаторы) и key = "class1text"
Редактировать: мне нужно. Где (), но References () имеет только HasMany ()
Что у меня естьдо сих пор:
public void TextMap : ClassMap<Text>
{
public TextMap()
{
Table("restexts");
CompositeId()
.KeyProperty(t => t.TenantId, "tenant")
.KeyProperty(t => t.Key, "name")
.KeyProperty(t => t.Number, "number");
Map(t => t.Value, "content");
}
}
public void Class1Map : ClassMap<Class1>
{
public TextMap()
{
// mapping rest
References(c => c.TitleName)
.Columns("textnumber", ??, ??); // column 2 and 3 missing, because always the same
}
}
Есть идеи?