Sto tentando di creare un modello Entity Framework 4 basato su un database SQL Server 2008 legacy. Dato che il modello verrà pubblicato in un servizio web, devo omettere una colonna intera chiamata Newsletter Sottoscritta da una delle entità del modello.Entity Framework: la colonna deve essere mappata anche se ha un valore predefinito?
Dopo aver rimosso la colonna nella finestra di progettazione EF ho ottenuto il seguente errore di compilazione:
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
ma la colonna sembra avere un valore predefinito di 0 ad esso legato. Ho provato a fare funzionare questa istruzione SQL sul database:
ALTER TABLE [dbo].[Users] ADD DEFAULT ((0)) FOR [NewsletterSubscribed]
Ma anche questo non funziona:
Msg 1781, Level 16, State 1, Line 3 Column already has a DEFAULT bound to it. Msg 1750, Level 16, State 0, Line 3 Could not create constraint. See previous errors.
Quindi, o la colonna non ha un valore predefinito (in questo caso non sono sicuro perché posso creare uno), o Entity Framework non lo vede. Cosa sta succedendo?
Grazie,
Adrian
Grazie! Sono stato alle prese con questo per settimane ... –