2009-12-16 12 views
33

Ho una tabella con un tipo di dati di data sql. Quando guardo il markup EDM, l'elemento di archiviazione riflette questo. L'entità concettuale ha un tipo di dati di DateTime (non sembra essere un tipo di dati Date). Quando chiamo save changes e ho un'istanza DateTime associata con l'entità che voglio persistere, ottengo il seguente errore:Utilizzo del tipo di dati di data sql e EF4

La conversione di un tipo di dati datetime2 in un tipo di dati datetime ha provocato un fuori range valore. La dichiarazione è stata chiusa.

Come posso utilizzare il tipo di dati data nel mio schema e avere un comportamento EF? Grazie!

risposta

49

Sembra che la colonna della data SQL non sia annullabile, ma non è stata inizializzata la data sull'entità prima di salvare?

+1

Sì, ho appena realizzato che non aveva niente da fare con la colonna della mia data, ho un'altra colonna DateTime che ha un valore predefinito specificato nel db ma ho dimenticato di cambiare la proprietà StoreGeneratedPattern nell'SSDL per farlo funzionare. Colpa mia. –

+1

@Pop Catalin: difficile da biasimare l'EF qui; si sta comportando correttamente. SQL Server ha solo un intervallo 'DateTime' molto stranamente limitato. –

+0

Intendevo in generale, questo era solo uno dei tanti problemi che ho riscontrato in un periodo di tempo molto breve ... (E BTW, EF è venuto dopo SQL Server, mi aspettavo di più da EF) –

Problemi correlati