ObjectContext.AddObject(String, Object) Yöntem

Tanım

Nesne bağlamı için bir nesne ekler.

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)

Parametreler

entitySetName
String

Varlık kümesi adını temsil eder ve isteğe bağlı olarak varlık kapsayıcı adı tarafından nitelenebilir.

entity
Object

Object Eklenecek.

Özel durumlar

entity parametresi null'dir.

-veya-

entitySetName uygun değil.

Örnekler

Bu örnek yeni bir ürün ekler ve değişiklikleri veritabanına kaydeder.

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);
    }
}

Açıklamalar

ObjectContext nesnesini nesne bağlamı içine eklemek için üzerinde çağrısı AddObject yapın. Nesne henüz veri kaynağında mevcut olmayan yeni bir nesne olduğunda bunu yapın.

nesneleri veya Deleted durumunda öğesine eklenir ObjectStateManagerDetached.Added

Nesne bağlamındaki başka bir nesneyle ilişkili yeni bir nesne oluşturduğunuzda, aşağıdaki yöntemlerden birini kullanarak nesneyi ekleyin:

Nesne ayrılmış durumdaysa, bir olmamalıdır EntityKey.

Biçimin entitySetName kuralları aşağıdaki gibidir:

  • DefaultContainerName özelliği isenull, > olması gerekir.<Varlık Kümesi Adı>.

  • nulldeğilseDefaultContainerName, entitySetNameVarlık Kapsayıcı Adı> olabilir<.<Varlık Kümesi Adı> veya <Varlık Kümesi Adı>.

object ve değerine sahipse EntityKeyentitySetName, EntitySet varlık anahtarının ve varlık kapsayıcı adına göre bulunan anahtarla entitySetName eşleşmesi EntitySet gerekir.

Şunlara uygulanır

Ayrıca bkz.