ObjectContext.AddObject(String, Object) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Ajoute un objet au contexte de l’objet.
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)
Paramètres
- entitySetName
- String
Représente le nom du jeu d’entités, qui peut éventuellement être qualifié par le nom du conteneur d’entités.
Exceptions
Exemples
Cet exemple montre comment ajouter un nouveau produit et enregistrer les modifications apportées à la base de données.
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);
}
}
Remarques
Appelez AddObject l’objet ObjectContext pour ajouter l’objet au contexte de l’objet. Procédez ainsi lorsque l’objet est un nouvel objet qui n’existe pas encore dans la source de données.
Les objets sont ajoutés à l’état ObjectStateManager ou à l’étatDetachedDeleted.Added
Lorsque vous créez un objet lié à un autre objet dans le contexte de l’objet, ajoutez l’objet à l’aide de l’une des méthodes suivantes :
Appelez la Add méthode sur l’objet EntityCollection<TEntity> associé et spécifiez l’objet associé. Procédez ainsi pour une relation un-à-plusieurs ou plusieurs-à-plusieurs.
Définissez la Value propriété de EntityReference<TEntity> l’objet associé. Procédez ainsi pour une relation un-à-un ou plusieurs-à-un.
Si l’objet est dans un état détaché, il ne doit pas avoir de EntityKey.
Les règles du entitySetName format sont les suivantes :
Si la DefaultContainerName propriété est
null, laentitySetNamepropriété doit être entièrement qualifiée comme dans <Entity Container Name>.<Nom> de l’ensemble d’entités.Si DefaultContainerName ce n’est pas
nullle cas, ilentitySetNamepeut s’agir d’un <nom> de conteneur d’entités.<Nom> de l’ensemble d’entités ou <nom> du jeu d’entités.
Si elle object a une EntityKey valeur et entitySetName qu’elle a une valeur, la EntitySet clé d’entité doit correspondre à celle EntitySet trouvée en fonction du nom du conteneur d’entités et de l’entité entitySetName .