У меня есть следующий класс:
public class Address
{
public virtual int Id { get; private set; }
public virtual IList<string> AddressLines { get; set; }
public virtual string CityOrTown { get; set; }
public virtual string County { get; set; }
public virtual string Postcode { get; set; }
public virtual string Country { get; set; }
public virtual Member Member { get; set; }
public Address()
{
AddressLines = new List<string>();
}
public virtual void AddAddressLine(string addressLine)
{
AddressLines.Add(addressLine);
}
}
и следующий класс отображения:
public AddressMap()
{
Id(x => x.Id);
HasMany(x => x.AddressLines).Element("AddressLine");
Map(x => x.CityOrTown);
Map(x => x.County);
Map(x => x.Postcode);
Map(x => x.Country);
References(x => x.Member);
}
Таблица «адресные линии» создается с двумя столбцами «Address_Id» и «AddressLine» с внешним ключом таблицы «address».
По какой-то причине при сохранении адреса коллекция AddressLines не сохраняется в базе данных;
Я что-то упустил?
Похоже, не так много информации о сопоставлении IList. Я знаю, что раньше это было невозможно, потому что строка является типом значения, а не типом сущности, но я уверен, что теперь это возможно?