ObjectContext.AddObject(String, Object) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přidá objekt do kontextu objektu.
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
Představuje název sady entit, který může být volitelně kvalifikován názvem kontejneru entity.
Výjimky
Příklady
Tento příklad přidá nový produkt a uloží změny do databáze.
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);
}
}
Poznámky
Voláním AddObject na objekt ObjectContext přidáte objekt do kontextu objektu. Tuto akci proveďte, pokud je objekt novým objektem, který ještě ve zdroji dat neexistuje. Další informace najdete v tématu Připojení a odpojení objektů.
Objekty se přidají do objektu DetachedObjectStateManager ve stavu , Deleted nebo Added .
Při vytváření nového objektu, který souvisí s jiným objektem v kontextu objektu, přidejte objekt pomocí jedné z následujících metod:
Zavolejte metodu Add na EntityCollection<TEntity> a zadejte související objekt. To udělejte pro relaci 1:N nebo M:N.
Value Nastavte vlastnost objektu EntityReference<TEntity> na související objekt. To udělejte pro relaci 1:1 nebo N:1.
Další informace najdete v tématu Vytváření, přidávání, úpravy a odstraňování objektů.
Pokud je objekt v odpojeném stavu, nesmí mít .EntityKey
Pravidla pro entitySetName
formát jsou následující:
DefaultContainerName Pokud je
null
vlastnost ,entitySetName
musí být plně kvalifikovaný jako v <názvu> kontejneru entity.<Název> sady entit.Pokud DefaultContainerName není
null
,entitySetName
pak může být název <kontejneru> entity.<Název> sady entit nebo <název> sady entit.
object
Pokud má EntityKey a entitySetName
hodnotu, musí EntitySet se hodnota klíče entity shodovat s EntitySet nalezeným na základě názvu kontejneru entitySetName
entity a .
Platí pro
Viz také
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro