Как сохранить в записи базы данных со значением первичного ключа = 0? - PullRequest
0 голосов
/ 22 июня 2011

У меня есть клиентская база данных, к которой я обращаюсь с помощью nHibernate.В одной таблице у них есть первичный ключ, который автоматически увеличивается, начиная с 0 .Я не могу изменить базу данных клиента на автоинкремент на основе 1.

Когда я пытаюсь сохранить дочернюю запись в таблице с внешним ключом обратно в эту таблицу, я получаю следующую ошибку: "not-nullсвойство ссылается на нулевое или временное значение ".Проблема возникает только тогда, когда я сохраняю дочерний элемент записи со значением первичного ключа 0, все остальные записи работают нормально.

Это генератор для родительской таблицы

и карта отношений внешнего ключа:

Вопрос: как сохранить запись базы данных со значением первичного ключа = 0?

1 Ответ

0 голосов
/ 23 июня 2011

Я не вижу ваши сопоставления, но я бы попробовал

public ParentMap()
{
    Id(x => x.Id).GeneratedBy.Increment().UnsavedValue(-1);
}

и

public Parent()
{
    Id = -1;
}
...