Я получаю эту ошибку при попытке вставить новый элемент, но при связывании его с уже созданным (Language) записью:EF - для уже созданного объекта: Невозможно вставить значение NULL в столбец «Id», таблицу «Языки»; столбец не допускает обнуляет
var languageRepository = RepositoryFactory.CreateReadOnly<Language>();
_defaultLanguage = languageRepository.FirstOrDefault(l => l.IsDefault);
(...)
newItem.Images = new List<Image>
{
new Image
{
FileName = filename,
Language = _defaultLanguage
}
};
В этом случае _defaultLanguage
уже существует в базе данных, то я не знаю, почему он пытается вставить его как новую запись, а не просто привязать к уже существующему идентификатору.
Содержание _defaultLanguage:
Любая идея, что может помочь?
Какой тип 'Язык' и, пожалуйста, опубликуйте клавиши изображений, а также клавиши Item. –
вам нужно добавить больше кода, чтобы получить помощь. – Sampath
ваша ошибка относится к таблице Languages, но ваш код относится к таблице изображений. Кажется, что _defaultLanguage - это не то, что вы думаете – mmcrae