2012-04-10 7 views
7

sto ottenendo questo messaggio di errore colonna Null in Entity Framework 4.1 - quando la colonna non è in realtà annullabile:Entity Framework non annullabile è mappata a una proprietà un'entità annullabile

Non-nullable column MyView.RunningTotal in table TransactionListView 
is mapped to a nullable entity property. 

Ma si può vedere dalla screenshot sotto la colonna non è annullabile e che la proprietà dell'entità non è nulla nulla. Quindi perché si verifica questo errore?

enter image description here

+0

Does (None) indica il valore predefinito di nullability ma non falso? Se si specifica True, funzionerà? Non ho uno studio visivo vicino a me ora per controllare da solo ... – ILya

+1

Modifica (Nessuna) su False funziona, ma tale modifica verrà persa ogni volta che viene rigenerato edmx (utilizzando il modello di generazione dal database) –

+0

Hai provato a rimuovere l'entità dal designer e lo aggiungi nuovamente? Ho risolto problemi simili in questo modo. – ctorx

risposta

12

La soluzione straight-forward è quello di specificare manualmente parametro Nullable su True.

+0

Ok, quindi ho fatto questo per cominciare e sto ancora ricevendo questo errore in Visual Studio 2015. Qualcosa non va. –

+0

È così strano. Nella finestra delle proprietà, ha detto nullable "True", ma ho appena aperto il file .edmx in un editor di testo ed è impostato su false. Che diamine. –

0

2017 Update (Visual Studio 2017)

Se la soluzione straight-forward accettato menzionato da llya non ha aiutato, allora questo potrebbe. Si può notare che quando si salva un diagramma, funziona un po ', come cambiare le proprietà della classe in base alle modifiche del diagramma. Si potrebbe pensare che il generatore stesso sarebbe a conoscenza di questi cambiamenti, giusto ?! Potresti ancora ricevere questo errore.

Quello che ha risolto il problema era la rigenerazione del database (fare clic con il tasto destro del mouse nel diagramma -> Rigenera database dal modello).

Problemi correlati