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 parametresidirnull.

-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

nesnesini nesne bağlamı için eklemek için üzerinde ObjectContext çağrısı AddObject yapın. Nesne henüz veri kaynağında mevcut olmayan yeni bir nesne olduğunda bunu yapın. Daha fazla bilgi için bkz. Nesneleri Ekleme ve Ayırma.

Nesneleri öğesine veya Deleted durumunda 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:

Daha fazla bilgi için bkz. Nesne Oluşturma, Ekleme, Değiştirme ve Silme.

Nesne ayrılmış durumdaysa, nesnesine sahip EntityKeyolmamalıdır.

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

  • DefaultContainerName özelliği ise null, entitySetNameVarlık Kapsayıcı Adı'ndaki> gibi tam olarak nitelenmelidir<.<Varlık Kümesi Adı>.

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

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

Şunlara uygulanır

Ayrıca bkz.