ObjectContext Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Tillhandahåller funktioner för att fråga och arbeta med entitetsdata som objekt.
public ref class ObjectContext : IDisposable
public class ObjectContext : IDisposable
type ObjectContext = class
interface IDisposable
Public Class ObjectContext
Implements IDisposable
- Arv
-
ObjectContext
- Implementeringar
Exempel
Det här exemplet visar hur du konstruerar en ObjectContext.
// Create the ObjectContext.
ObjectContext context =
new ObjectContext("name=AdventureWorksEntities");
// Set the DefaultContainerName for the ObjectContext.
// When DefaultContainerName is set, the Entity Framework only
// searches for the type in the specified container.
// Note that if a type is defined only once in the metadata workspace
// you do not have to set the DefaultContainerName.
context.DefaultContainerName = "AdventureWorksEntities";
ObjectSet<Product> query = context.CreateObjectSet<Product>();
// Iterate through the collection of Products.
foreach (Product result in query)
Console.WriteLine("Product Name: {0}", result.Name);
Kommentarer
Note
Klassen ObjectContext är inte trådsäker. Integriteten för dataobjekt i ett ObjectContext kan inte säkerställas i flertrådade scenarier.
Klassen ObjectContext är den primära klassen för att interagera med data som objekt som är instanser av entitetstyper som definieras i en konceptmodell. En instans av ObjectContext klassen kapslar in följande:
En anslutning till databasen i form av ett EntityConnection objekt.
Metadata som beskriver modellen i form av ett MetadataWorkspace objekt.
Ett ObjectStateManager objekt som hanterar objekt som sparats i cacheminnet.
När objektskiktet som representerar en konceptmodell genereras av verktygen entitetsdatamodell härleds klassen som representerar EntityContainer för modellen från ObjectContext.
Konstruktorer
| Name | Description |
|---|---|
| ObjectContext(EntityConnection, String) |
Initierar en ny instans av ObjectContext klassen med ett angivet namn på en anslutnings- och entitetscontainer. |
| ObjectContext(EntityConnection) |
Initierar en ny instans av ObjectContext klassen med den angivna anslutningen. Under konstruktionen extraheras metadataarbetsytan från EntityConnection objektet. |
| ObjectContext(String, String) |
Initierar en ny instans av klassen ObjectContext med ett angivet reťazec pripojenia- och entitetscontainernamn. |
| ObjectContext(String) |
Initierar en ny instans av klassen ObjectContext med angivet reťazec pripojenia och standardnamn för entitetscontainer. |
Egenskaper
| Name | Description |
|---|---|
| CommandTimeout |
Hämtar eller anger timeout-värdet i sekunder för alla objektkontextåtgärder. Ett |
| Connection |
Hämtar den anslutning som används av objektkontexten. |
| ContextOptions |
Hämtar den ObjectContextOptions instans som innehåller alternativ som påverkar beteendet för ObjectContext. |
| DefaultContainerName |
Hämtar eller anger standardcontainerns namn. |
| MetadataWorkspace |
Hämtar den metadataarbetsyta som används av objektkontexten. |
| ObjectStateManager |
Hämtar objekttillståndshanteraren som används av objektkontexten för att spåra objektändringar. |
| QueryProvider |
Hämtar LINQ-frågeprovidern som är associerad med den här objektkontexten. |
Metoder
| Name | Description |
|---|---|
| AcceptAllChanges() |
Accepterar alla ändringar som gjorts i objekt i objektkontexten. |
| AddObject(String, Object) |
Lägger till ett objekt i objektkontexten. |
| ApplyCurrentValues<TEntity>(String, TEntity) |
Kopierar skalärvärdena från det angivna objektet till objektet i ObjectContext som har samma nyckel. |
| ApplyOriginalValues<TEntity>(String, TEntity) |
Kopierar skalärvärdena från det angivna objektet till en uppsättning ursprungliga värden för objektet i ObjectContext som har samma nyckel. |
| ApplyPropertyChanges(String, Object) |
Föråldrad.
Tillämpar egenskapsändringar från ett frånkopplat objekt på ett objekt som redan är kopplat till objektkontexten. |
| Attach(IEntityWithKey) |
Bifogar ett objekt eller objektdiagram till objektkontexten när objektet har en entitetsnyckel. |
| AttachTo(String, Object) |
Bifogar ett objekt eller objektdiagram till objektkontexten i en specifik entitetsuppsättning. |
| CreateDatabase() |
Skapar databasen med hjälp av den aktuella datakällans anslutning och metadata i StoreItemCollection. |
| CreateDatabaseScript() |
Genererar ett DDL-skript (Data Definition Language) som skapar schemaobjekt (tabeller, primära nycklar, sekundärnycklar) för metadata i StoreItemCollection. Läser StoreItemCollection in metadata från SSDL-filer (Store Schema Definition Language). |
| CreateEntityKey(String, Object) |
Skapar entitetsnyckeln för ett specifikt objekt eller returnerar entitetsnyckeln om den redan finns. |
| CreateObject<T>() |
Skapar och returnerar en instans av den begärda typen . |
| CreateObjectSet<TEntity>() |
Skapar en ny ObjectSet<TEntity> instans som används för att fråga, lägga till, ändra och ta bort objekt av den angivna entitetstypen. |
| CreateObjectSet<TEntity>(String) |
Skapar en ny ObjectSet<TEntity> instans som används för att fråga, lägga till, ändra och ta bort objekt av den angivna typen och med det angivna entitetsuppsättningsnamnet. |
| CreateProxyTypes(IEnumerable<Type>) |
Genererar en motsvarande typ som kan användas med Entity Framework för varje typ i den angivna uppräkningen. |
| CreateQuery<T>(String, ObjectParameter[]) |
Skapar en ObjectQuery<T> i den aktuella objektkontexten med hjälp av den angivna frågesträngen. |
| DatabaseExists() |
Kontrollerar om databasen som anges som databas i den aktuella datakällans anslutning finns på datakällan. |
| DeleteDatabase() |
Tar bort databasen som anges som databasen i den aktuella datakällans anslutning. |
| DeleteObject(Object) |
Markerar ett objekt för borttagning. |
| Detach(Object) |
Tar bort objektet från objektkontexten. |
| DetectChanges() |
Ser till att ObjectStateEntry ändringarna synkroniseras med ändringar i alla objekt som spåras av ObjectStateManager. |
| Dispose() |
Frigör de resurser som används av objektkontexten. |
| Dispose(Boolean) |
Frigör de resurser som används av objektkontexten. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| ExecuteFunction(String, ObjectParameter[]) |
Kör en lagrad procedur eller funktion som definieras i datakällan och uttrycks i den konceptuella modellen. tar bort alla resultat som returneras från funktionen. och returnerar antalet rader som påverkas av körningen. |
| ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[]) |
Kör den angivna lagrade proceduren eller funktionen som definieras i datakällan och uttrycks i den konceptuella modellen, med de angivna parametrarna och kopplingsalternativet. Returnerar ett skrivet ObjectResult<T>. |
| ExecuteFunction<TElement>(String, ObjectParameter[]) |
Kör en lagrad procedur eller funktion som definieras i datakällan och mappas i den konceptuella modellen med de angivna parametrarna. Returnerar ett skrivet ObjectResult<T>. |
| ExecuteStoreCommand(String, Object[]) |
Kör ett godtyckligt kommando direkt mot datakällan med hjälp av den befintliga anslutningen. |
| ExecuteStoreQuery<TElement>(String, Object[]) |
Kör en fråga direkt mot datakällan som returnerar en sekvens med inskrivna resultat. |
| ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[]) |
Kör en fråga direkt mot datakällan och returnerar en sekvens med inskrivna resultat. Ange entitetsuppsättningen och kopplingsalternativet så att frågeresultat kan spåras som entiteter. |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetKnownProxyTypes() |
Returnerar alla befintliga proxytyper. |
| GetObjectByKey(EntityKey) |
Returnerar ett objekt som har den angivna entitetsnyckeln. |
| GetObjectType(Type) |
Returnerar entitetstypen för den POCO-entitet som är associerad med ett proxyobjekt av en angiven typ. |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| LoadProperty(Object, String, MergeOption) |
Läser uttryckligen in ett objekt som är relaterat till det angivna objektet av den angivna navigeringsegenskapen och använder det angivna kopplingsalternativet. |
| LoadProperty(Object, String) |
Läser uttryckligen in ett objekt som är relaterat till det angivna objektet av den angivna navigeringsegenskapen och använder alternativet för standardsammanfogning. |
| LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>, MergeOption) |
Läser uttryckligen in ett objekt som är relaterat till det angivna objektet av den angivna LINQ-frågan och med hjälp av det angivna kopplingsalternativet. |
| LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>) |
Läser uttryckligen in ett objekt som är relaterat till det angivna objektet av den angivna LINQ-frågan och med hjälp av standardalternativet för sammanfogning. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| Refresh(RefreshMode, IEnumerable) |
Uppdaterar en samling objekt i objektkontexten med data från datakällan. |
| Refresh(RefreshMode, Object) |
Uppdaterar ett objekt i objektkontexten med data från datakällan. |
| SaveChanges() |
Bevarar alla uppdateringar av datakällan och återställer ändringsspårning i objektkontexten. |
| SaveChanges(Boolean) |
Föråldrad.
Bevarar alla uppdateringar av datakällan och återställer eventuellt ändringsspårning i objektkontexten. |
| SaveChanges(SaveOptions) |
Bevarar alla uppdateringar av datakällan med angiven SaveOptions. |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
| Translate<TElement>(DbDataReader) |
Översätter en DbDataReader som innehåller rader med entitetsdata till objekt av den begärda entitetstypen. |
| Translate<TEntity>(DbDataReader, String, MergeOption) |
Översätter en DbDataReader som innehåller rader med entitetsdata till objekt av den begärda entitetstypen, i en specifik entitetsuppsättning och med det angivna kopplingsalternativet. |
| TryGetObjectByKey(EntityKey, Object) |
Returnerar ett objekt som har den angivna entitetsnyckeln. |
Händelser
| Name | Description |
|---|---|
| ObjectMaterialized |
Inträffar när ett nytt entitetsobjekt skapas från data i datakällan som en del av en fråga eller en inläsningsåtgärd. |
| SavingChanges |
Inträffar när ändringar sparas i datakällan. |