EntityState Enumerazione
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Stato di un oggetto entità.
Questa enumerazione supporta una combinazione bit per bit dei rispettivi valori dei membri.
public enum class EntityState
[System.Flags]
public enum EntityState
[System.Flags]
[System.ComponentModel.DataAnnotations.BindableType(IsBindable=false)]
public enum EntityState
[<System.Flags>]
type EntityState =
[<System.Flags>]
[<System.ComponentModel.DataAnnotations.BindableType(IsBindable=false)>]
type EntityState =
Public Enum EntityState
- Ereditarietà
- Attributi
Campi
Added | 4 | L'oggetto è nuovo, è stato aggiunto al contesto dell'oggetto e il metodo SaveChanges() non è stato chiamato. Dopo aver salvato le modifiche, lo stato dell'oggetto cambia in Unchanged. Gli oggetti nello stato Added non presentano valori originali in ObjectStateEntry. |
Deleted | 8 | L'oggetto è stato eliminato dal contesto dell'oggetto. Dopo aver salvato le modifiche, lo stato dell'oggetto cambia in Detached. |
Detached | 1 | L'oggetto esiste ma non ne viene eseguito il rilevamento. Un'entità si trova in questo stato subito dopo la creazione e prima dell'aggiunta al contesto dell'oggetto. Un'entità si trova in questo stato anche dopo essere stata rimossa chiamando il metodo Detach(Object) o nel caso in cui sia stata caricata mediante un oggetto NoTrackingMergeOption. Nessuna istanza ObjectStateEntry è associata a oggetti nello stato Detached. |
Modified | 16 | Una delle proprietà scalari dell'oggetto è stata modificata e il metodo SaveChanges() non è stato chiamato. Nelle entità POCO senza proxy di rilevamento delle modifiche lo stato delle proprietà modificate cambia in Modified quando viene chiamato il metodo DetectChanges(). Dopo aver salvato le modifiche, lo stato dell'oggetto cambia in Unchanged. |
Unchanged | 2 | L'oggetto non è stato modificato dopo la connessione al contesto o dopo l'ultima chiamata al metodo SaveChanges(). |
Commenti
Il contesto dell'oggetto deve conoscere lo stato di un oggetto per salvare di nuovo le modifiche nell'origine dati. Negli oggetti ObjectStateEntry sono archiviate le informazioni sull'oggetto EntityState. I metodi SaveChanges
di ObjectContext elaborano le entità connesse al contesto e aggiornano l'origine dati in base all'oggetto EntityState di ogni oggetto. Per altre informazioni, vedere Creazione, aggiunta, modifica ed eliminazione di oggetti.
Lo stato degli oggetti in un contesto dell'oggetto viene gestito da ObjectStateManager. Per conoscere lo stato di un oggetto, chiamare uno dei seguenti metodi di ObjectStateManager: TryGetObjectStateEntry, GetObjectStateEntry o GetObjectStateEntries. La proprietà State dell'oggetto ObjectStateEntry consente di definire lo stato dell'oggetto.