ObjectContext.AddObject(String, Object) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dodaje obiekt do kontekstu obiektu.
public:
void AddObject(System::String ^ entitySetName, System::Object ^ entity);
public void AddObject (string entitySetName, object entity);
member this.AddObject : string * obj -> unit
Public Sub AddObject (entitySetName As String, entity As Object)
Parametry
- entitySetName
- String
Reprezentuje nazwę zestawu jednostek, która może być opcjonalnie kwalifikowana przez nazwę kontenera jednostki.
Wyjątki
Przykłady
W tym przykładzie dodamy nowy produkt i zapiszemy zmiany w bazie danych.
Product newProduct;
// Define values for the new product.
string dateTimeString = "1998-06-01 00:00:00.000";
string productName = "Flat Washer 10";
string productNumber = "FW-5600";
Int16 safetyStockLevel = 1000;
Int16 reorderPoint = 750;
// Convert the date time string into a DateTime instance.
DateTime sellStartDate;
if (!DateTime.TryParse(dateTimeString, out sellStartDate))
{
throw new ArgumentException(string.Format("The string '{0}'cannot "
+ "be converted to DateTime.", dateTimeString));
}
// Create a new Product.
newProduct = Product.CreateProduct(0,
productName, productNumber, false, false, safetyStockLevel, reorderPoint,
0, 0, 0, DateTime.Today, Guid.NewGuid(), DateTime.Today);
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
try
{
// Add the new object to the context.
context.Products.AddObject(newProduct);
// Persist the new produc to the data source.
context.SaveChanges();
// Return the identity of the new product.
return newProduct.ProductID;
}
catch (UpdateException ex)
{
throw new InvalidOperationException(string.Format(
"The object could not be added. Make sure that a "
+ "product with a product number '{0}' does not aleady exist.\n",
newProduct.ProductNumber), ex);
}
}
Uwagi
Wywołaj AddObject metodę ObjectContext , aby dodać obiekt do kontekstu obiektu. Zrób to, gdy obiekt jest nowym obiektem, który jeszcze nie istnieje w źródle danych. Aby uzyskać więcej informacji, zobacz Dołączanie i odłączanie obiektów.
Obiekty są dodawane do obiektu ObjectStateManager w Detachedstanie , Deleted lub Added .
Podczas tworzenia nowego obiektu powiązanego z innym obiektem w kontekście obiektu dodaj obiekt przy użyciu jednej z następujących metod:
Wywołaj metodę Add w obiekcie EntityCollection<TEntity> i określ powiązany obiekt. Zrób to dla relacji jeden do wielu lub wiele do wielu.
Value Ustaw właściwość obiektu EntityReference<TEntity> na powiązany obiekt. Zrób to dla relacji jeden do jednego lub wiele do jednego.
Aby uzyskać więcej informacji, zobacz Tworzenie, dodawanie, modyfikowanie i usuwanie obiektów.
Jeśli obiekt jest w stanie odłączonym, nie może mieć .EntityKey
Reguły dla entitySetName
formatu są następujące:
DefaultContainerName Jeśli właściwość ma
null
wartość ,entitySetName
element musi być w pełni kwalifikowany jako w <polu Nazwa> kontenera jednostki.<Nazwa> zestawu jednostek.Jeśli DefaultContainerName nie
null
ma wartości ,entitySetName
może to być nazwa kontenera> jednostki<.<Nazwa> zestawu jednostek lub <nazwa> zestawu jednostek.
Jeśli element object
ma EntityKey wartość i entitySetName
, EntitySet klucz jednostki musi być zgodny z znalezioną EntitySet wartością na entitySetName
podstawie nazwy kontenera jednostki i .