Проблема с сортировкой <map>, когда значение равно нулю - PullRequest
2 голосов
/ 23 апреля 2009

Я пытаюсь сохранить SortedList В NHibernate 2.0. Если значение элемента (не ключа) равно нулю, этот элемент не сохраняется в базе данных.

Фрагмент класса:

public class TimeSeries{
    ...
    public TimeSeries(){
        Data = new SortedList();
    }
    public virtual IDictionary Data { get; private set; }
    ...
}

фрагмент кода:

...
    <map name="Data" cascade="all" lazy="true" sort="natural" collection-type="sorted-list">
        <key column="ID"/>
        <index type="Date" column="Period"/>
        <element type="double" column="Value" not-null="false"/>
    </map>
...

Фрагмент использования:

var series = new TimeSeries();
series.Data.Add(new DateTime(2000, 1, 1), 1);
series.Data.Add(new DateTime(2000, 1, 2), null);
series.Data.Add(new DateTime(2000, 1, 3), 3);
repository.Add(series);

Первый и третий пункты сохраняются, но не второй. Если я изменю значение типа double с нулевого на ненулевое значение, оно сохранится нормально.

Есть идеи, как сохранить нулевые значения? Я использую MySql и схема базы данных допускает нулевые значения.

Спасибо, Marcus

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...