Ho una classe chiamata Client mappata a una tabella di database utilizzando il codice Entity Framework per primo. La tabella ha un campo calcolato che ho bisogno di essere disponibile nella mia classe Client, ma capisco che non sarà possibile scrivere in questo campo. Esiste un modo per configurare Entity Framework in modo da ignorare la proprietà durante il salvataggio, ma includere la proprietà durante la lettura?Entity Framework Code First - Come ignorare una colonna quando si salva
Ho provato a utilizzare il metodo Ignore nella mia classe di configurazione o l'attributo [NotMapped], ma ciò impedisce la lettura della proprietà dal database.
proprietà
Grazie, sembra essere la risposta. Tuttavia, dal momento che sto usando la mia proprietà calcolata come riferimento di chiave esterna a un'altra tabella, ora sto ottenendo "Una proprietà dipendente in un ReferentialConstraint è mappata a una colonna generata dal negozio." Non sarà più possibile utilizzarlo come riferimento di chiave esterna? –
@ EasyTimer Onestamente ho difficoltà a immaginare un simile scenario. Dal punto di vista EF questo non è possibile perché EF deve essere in grado di aggiornare la chiave esterna se si modifica il riferimento nell'applicazione. Forse nel tuo caso (dato che non conosco i tuoi requisiti esatti) avendo solo le proprietà di navigazione sarebbe sufficiente, dai un'occhiata qui: http://stackoverflow.com/questions/5691780/navigation-property-without-declaring-foreign -key – tpeczek
Ho risolto il mio problema dividendo le mie classi in due come in questo articolo http://weblogs.asp.net/manavi/archive/2011/04/24/associations-in-ef-4-1-code- first-part-4-table-splitting.aspx Ho una classe che contiene il campo calcolato e un'altra classe che contiene tutti i campi che devo essere in grado di modificare. –