EntityReference<TEntity> Sınıf

Tanım

Sıfır veya bir çokluğu olan bir ilişkilendirmenin ilgili sonunu temsil eder.

generic <typename TEntity>
 where TEntity : class, IEntityWithRelationshipspublic ref class EntityReference sealed : System::Data::Objects::DataClasses::EntityReference
generic <typename TEntity>
 where TEntity : classpublic ref class EntityReference sealed : System::Data::Objects::DataClasses::EntityReference
[System.Runtime.Serialization.DataContract]
[System.Serializable]
public sealed class EntityReference<TEntity> : System.Data.Objects.DataClasses.EntityReference where TEntity : class, IEntityWithRelationships
[System.Runtime.Serialization.DataContract]
[System.Serializable]
public sealed class EntityReference<TEntity> : System.Data.Objects.DataClasses.EntityReference where TEntity : class
[<System.Runtime.Serialization.DataContract>]
[<System.Serializable>]
type EntityReference<'Entity (requires 'Entity : null and 'Entity :> IEntityWithRelationships)> = class
    inherit EntityReference
[<System.Runtime.Serialization.DataContract>]
[<System.Serializable>]
type EntityReference<'Entity (requires 'Entity : null)> = class
    inherit EntityReference
Public NotInheritable Class EntityReference(Of TEntity)
Inherits EntityReference

Tür Parametreleri

TEntity

Başvurunun varlık türü.

Devralma
EntityReference<TEntity>
Öznitelikler

Örnekler

Bu örnekte, bir nesne ile siparişin EntityReference<TEntity> sevkiyat adresini temsil eden ilgili Address bir SalesOrderHeader nesne arasındaki ilişkiyi değiştirmek için nesnesinin nasıl kullanılacağı gösterilmektedir.


// Define the order and new address IDs.
int orderId = 43669;
int addressId = 26;

using (AdventureWorksEntities context
    = new AdventureWorksEntities())
{
    // Get the billing address to change to.
    Address address =
        context.Addresses.Single(c => c.AddressID == addressId);

    // Get the order being changed.
    SalesOrderHeader order =
        context.SalesOrderHeaders.Single(o => o.SalesOrderID == orderId);

    // You do not have to call the Load method to load the addresses for the order,
    // because  lazy loading is set to true
    // by the constructor of the AdventureWorksEntities object.
    // With  lazy loading set to true the related objects are loaded when
    // you access the navigation property. In this case Address.

    // Write the current billing street address.
    Console.WriteLine("Current street: "
        + order.Address.AddressLine1);

    // Change the billing address.
    if (!order.Address.Equals(address))
    {
        // Use Address navigation property to change the association.
        order.Address = address;

        // Write the changed billing street address.
        Console.WriteLine("Changed street: "
            + order.Address.AddressLine1);
    }

    // If the address change succeeds, save the changes.
    context.SaveChanges();

    // Write the current billing street address.
    Console.WriteLine("Current street: "
        + order.Address.AddressLine1);
}

Açıklamalar

İlgili EntityReference<TEntity> uçta sıfır veya bir çokluğu olduğunda bir nesne bir gezinti özelliği tarafından döndürülür. Daha fazla bilgi için bkz . NavigationProperty Öğesi (CSDL).

Bir EntityReference<TEntity> nesnenin, ilişkinin diğer ucunda karşılık gelen EntityCollection<TEntity> (bire çok ilişki) veya EntityReference<TEntity> (bire bir ilişki) olabilir. Bir EntityReference<TEntity> ve EntityCollection<TEntity> modeli aynı ilişkinin karşıt uçları olduğunda, ilişkinin bütünlüğü nesne düzeyinde korunur.

Bu sınıf devralınamaz.

Oluşturucular

EntityReference<TEntity>()

EntityReference<TEntity> öğesinin yeni bir örneğini oluşturur.

Özellikler

EntityKey

İlgili nesnenin anahtarını döndürür.

(Devralındığı yer: EntityReference)
IsLoaded

tüm ilgili nesnelerin yüklenip yüklenmediğini gösteren bir değer alır.

(Devralındığı yer: RelatedEnd)
RelationshipName

bu ilgili sonun katıldığı ilişkinin adını alır.

(Devralındığı yer: RelatedEnd)
RelationshipSet

İlgili sonun meta verilerine başvuru alır.

(Devralındığı yer: RelatedEnd)
SourceRoleName

İlişkinin kaynak ucundaki rol adını alır.

(Devralındığı yer: RelatedEnd)
TargetRoleName

İlişkinin hedef ucundaki rol adını alır.

(Devralındığı yer: RelatedEnd)
Value

Bu EntityReference<TEntity>tarafından döndürülen ilgili nesneyi alır veya ayarlar.

Yöntemler

Attach(TEntity)

Nesne bağlamındaki iki nesne arasında çoka bir veya bire bir ilişki oluşturur.

Attach<TEntity>(IEnumerable<TEntity>, Boolean)

İki ekli nesne arasındaki ilişkiyi tanımlar.

(Devralındığı yer: RelatedEnd)
CreateSourceQuery()

İlgili nesneyi döndüren eşdeğer bir nesne sorgusu oluşturur.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetEnumerator()

İlgili nesnelerin koleksiyonunda yineleyen bir IEnumerator döndürür.

(Devralındığı yer: RelatedEnd)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
Load()

Türetilmiş bir sınıfta geçersiz kılındığında, varsayılan birleştirme seçeneğiyle ilgili nesneyi veya nesneleri ilgili uca yükler.

(Devralındığı yer: RelatedEnd)
Load(MergeOption)

Belirtilen birleştirme seçeneğiyle bunun EntityReference<TEntity> için ilgili nesneyi yükler.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
Merge<TEntity>(IEnumerable<TEntity>, MergeOption, Boolean)

İlgili varlıkları yerel EntityCollection<TEntity>ile birleştirir.

(Devralındığı yer: RelatedEnd)
OnDeserialized(StreamingContext)

Örneklerle birlikte varlık nesnelerinin seri durumdan çıkarılması için RelationshipManager dahili olarak kullanılır.

(Devralındığı yer: RelatedEnd)
OnRefDeserialized(StreamingContext)

Bu yöntem, ilgili varlık nesnelerini seri hale getirmek için dahili olarak kullanılır.

OnSerializing(StreamingContext)

Bu yöntem, ilgili varlık nesnelerini seri hale getirmek için dahili olarak kullanılır.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)
ValidateEntityForAttach<TEntity>(TEntity, Int32, Boolean)

Bir nesnenin yerel koleksiyona veya başvuruya eklenip eklenemeyeceğini belirler.

(Devralındığı yer: RelatedEnd)
ValidateLoad<TEntity>(MergeOption, String)

İlgili nesnenin veya nesnelerin yerel koleksiyona veya başvuruya başarıyla yüklenebilmesini sağlar.

(Devralındığı yer: RelatedEnd)
ValidateOwnerForAttach()

İlgili ucun ait olduğu nesnenin ekleme işlemini desteklediğinden emin olur.

(Devralındığı yer: RelatedEnd)

Ekinlikler

AssociationChanged

İlgili bir uçta değişiklik yapıldığında gerçekleşir.

(Devralındığı yer: RelatedEnd)

Belirtik Arabirim Kullanımları

IRelatedEnd.Add(IEntityWithRelationships)

İlgili uca bir nesne ekler.

(Devralındığı yer: RelatedEnd)
IRelatedEnd.Add(Object)

İlgili uca bir nesne ekler.

(Devralındığı yer: RelatedEnd)
IRelatedEnd.Attach(IEntityWithRelationships)

İlgili uca bir nesne ekler.

(Devralındığı yer: RelatedEnd)
IRelatedEnd.Attach(Object)

bir nesneyi ilgili uca ekler.

(Devralındığı yer: RelatedEnd)
IRelatedEnd.CreateSourceQuery()

İlgili uca ait nesneleri temsil eden bir IEnumerable döndürür.

(Devralındığı yer: RelatedEnd)
IRelatedEnd.Remove(IEntityWithRelationships)

İlgili uçta bir nesneyi koleksiyondan kaldırır.

(Devralındığı yer: RelatedEnd)
IRelatedEnd.Remove(Object)

Nesne ilgili ucun bir parçasıysa, ilgili uçtan bir nesneyi kaldırır.

(Devralındığı yer: RelatedEnd)

Şunlara uygulanır