EntityReference<TEntity> Třída

Definice

Představuje související konec přidružení s násobností nuly nebo jedné.

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 vztah mezi objektem SalesOrderHeader a souvisejícím Address objektem, který představuje dodací adresu objednávky.


// 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 naleznete v tématu NavigationProperty – element (CSDL).

Objekt EntityReference<TEntity> může mít odpovídající EntityCollection<TEntity> vztah (relace 1:N) nebo EntityReference<TEntity> (relace 1:1) na druhém konci relace. Když a EntityReference<TEntity>EntityCollection<TEntity> model protichůdný konec stejné relace, integrita relace se udržuje na úrovni objektu.

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

Konstruktory

Name Description
EntityReference<TEntity>()

Vytvoří novou instanci .EntityReference<TEntity>

Vlastnosti

Name Description
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>.

Metody

Name Description
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í objektový dotaz, který vrátí související objekt.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

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

IEnumerator Vrátí iterace prostřednictvím kolekce souvisejících objektů.

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

Slouží jako výchozí funkce hash.

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

Získá Type 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> objekt se zadanou možností sloučení.

MemberwiseClone()

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

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

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

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

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

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

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

OnSerializing(StreamingContext)

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

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

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

Zajišťuje úspěšné načtení souvisejícího objektu nebo objektů do místní kolekce nebo odkazu.

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

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

(Zděděno od RelatedEnd)

Událost

Name Description
AssociationChanged

Nastane, když se provede změna souvisejícího konce.

(Zděděno od RelatedEnd)

Explicitní implementace rozhraní

Name Description
IRelatedEnd.Add(IEntityWithRelationships)

Přidá objekt do souvisejícího konce.

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

Přidá objekt do souvisejícího konce.

(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í objekty IEnumerable , které patří ke souvisejícímu konci.

(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