Платформа объекта: Столбец должен быть отображен, хотя он действительно имеет значение по умолчанию?

Я пытаюсь создать Платформу Объекта 4 основанных на модели на базе данных SQL-сервера 2008 прежней версии. Так как модель будет опубликованной в веб-сервисе, я должен опустить целочисленный столбец под названием NewsletterSubscribed от одного из объектов модели.

После удаления столбца в разработчике EF я получил следующую ошибку компиляции:

Error   59  Error 3023: Problem in mapping fragments starting at line 356:Column Users.NewsletterSubscribed in table Users must be mapped: It has no default value and is not nullable.
    C:\Users\Adrian\Documents\Sites\Zeiterfassung\Zeiterfassung\API\V1\EFModel.edmx 357 15  Zeiterfassung

Но столбец, кажется, имеет значение по умолчанию 0 связанных к нему. Я пытался выполнить этот SQL-оператор против базы данных:

ALTER TABLE [dbo].[Users] ADD  DEFAULT ((0)) FOR [NewsletterSubscribed]

Но это также перестало работать:

Сообщение 1781, Уровень 16, состояние 1, Строка 3 столбца уже имеют ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ, связанное с ним. Сообщение 1750, Уровень 16, состояние 0, Строка 3 не Могли создать ограничение. Посмотрите предыдущие ошибки.

Так любой столбец не имеет значения по умолчанию (в этом случае, я не уверен, почему я не могу создать один), или Платформа Объекта не видит его. Что продолжается?

Спасибо,

Adrian

8
задан Adrian Grigore 19 June 2010 в 17:22
поделиться

1 ответ

Откройте .edmx с помощью XML-редактора Visual Studio, а не с помощью Entity Designer, и добавьте атрибут DefaultValue="0" к несопоставленному столбцу в SSDL. По некоторым причинам они не генерируются из базы данных.

12
ответ дан 5 December 2019 в 14:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: