Sdílet prostřednictvím


EntityReference<TEntity> Třída

Definice

Představuje související konec přidružení s násobností nula nebo jedna.

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

Parametry typu

TEntity

Typ entity odkazu.

Dědičnost
EntityReference<TEntity>
Atributy

Příklady

Tento příklad ukazuje, jak pomocí objektu EntityReference<TEntity> změnit relaci mezi objektem SalesOrderHeader a souvisejícím Address objektem, který představuje dodací adresu pro objednávku.


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

Poznámky

Objekt EntityReference<TEntity> je vrácen navigační vlastností, pokud související konec má násobnost nula nebo jedna. Další informace najdete v tématu NavigationProperty – element (CSDL).

Objekt EntityReference<TEntity> může mít odpovídající EntityCollection<TEntity> (relace 1:N) nebo EntityReference<TEntity> (relace 1:1) na druhém konci relace. Pokud model EntityReference<TEntity> a model, který EntityCollection<TEntity> je protichůdný ke stejnému vztahu, je integrita relace zachována na úrovni objektu.

Tato třída se nemůže dědit.

Konstruktory

EntityReference<TEntity>()

Vytvoří novou instanci položky EntityReference<TEntity>.

Vlastnosti

EntityKey

Vrátí klíč pro související objekt.

(Zděděno od EntityReference)
IsLoaded

Získá hodnotu, která označuje, zda byly načteny všechny související objekty.

(Zděděno od RelatedEnd)
RelationshipName

Získá název relace, ve které se tento související konec účastní.

(Zděděno od RelatedEnd)
RelationshipSet

Získá odkaz na metadata pro související konec.

(Zděděno od RelatedEnd)
SourceRoleName

Získá název role na zdrojovém konci relace.

(Zděděno od RelatedEnd)
TargetRoleName

Získá název role na cílovém konci relace.

(Zděděno od RelatedEnd)
Value

Získá nebo nastaví související objekt vrácený tímto EntityReference<TEntity>objektem .

Metody

Attach(TEntity)

Vytvoří relaci M:1 nebo 1:1 mezi dvěma objekty v kontextu objektu.

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

Definuje relaci mezi dvěma připojenými objekty.

(Zděděno od RelatedEnd)
CreateSourceQuery()

Vytvoří ekvivalentní dotaz objektu, který vrátí související objekt.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetEnumerator()

Vrátí hodnotu , IEnumerator která prochází kolekci souvisejících objektů.

(Zděděno od RelatedEnd)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
Load()

Při přepsání v odvozené třídě načte související objekt nebo objekty na související konec s výchozí možností sloučení.

(Zděděno od RelatedEnd)
Load(MergeOption)

Načte související objekt pro tento EntityReference<TEntity> se zadanou možností sloučení.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
Merge<TEntity>(IEnumerable<TEntity>, MergeOption, Boolean)

Sloučí související entity do místního EntityCollection<TEntity>.

(Zděděno od RelatedEnd)
OnDeserialized(StreamingContext)

Používá se interně k deserializaci objektů entit spolu s RelationshipManager instancemi.

(Zděděno od RelatedEnd)
OnRefDeserialized(StreamingContext)

Tato metoda se používá interně k serializaci objektů souvisejících entit.

OnSerializing(StreamingContext)

Tato metoda se používá interně k serializaci objektů souvisejících entit.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
ValidateEntityForAttach<TEntity>(TEntity, Int32, Boolean)

Určuje, zda lze objekt připojit k místní kolekci nebo odkazu.

(Zděděno od RelatedEnd)
ValidateLoad<TEntity>(MergeOption, String)

Zajišťuje, aby související objekty nebo objekty mohly být úspěšně načteny do místní kolekce nebo odkazu.

(Zděděno od RelatedEnd)
ValidateOwnerForAttach()

Zajišťuje, že objekt, ke kterému patří související konec, podporuje operaci připojení.

(Zděděno od RelatedEnd)

Událost

AssociationChanged

Vyvolá se při změně souvisejícího konce.

(Zděděno od RelatedEnd)

Explicitní implementace rozhraní

IRelatedEnd.Add(IEntityWithRelationships)

Přidá objekt na související konec.

(Zděděno od RelatedEnd)
IRelatedEnd.Add(Object)

Přidá objekt na související konec.

(Zděděno od RelatedEnd)
IRelatedEnd.Attach(IEntityWithRelationships)

Připojí objekt na související konec.

(Zděděno od RelatedEnd)
IRelatedEnd.Attach(Object)

Připojí objekt ke souvisejícímu konci.

(Zděděno od RelatedEnd)
IRelatedEnd.CreateSourceQuery()

Vrátí hodnotu IEnumerable , která představuje objekty, které patří do souvisejícího konce.

(Zděděno od RelatedEnd)
IRelatedEnd.Remove(IEntityWithRelationships)

Odebere objekt z kolekce na souvisejícím konci.

(Zděděno od RelatedEnd)
IRelatedEnd.Remove(Object)

Odebere objekt ze souvisejícího konce, pokud je objekt součástí souvisejícího konce.

(Zděděno od RelatedEnd)

Platí pro