EntityReference<TEntity> Klasa

Definicja

Reprezentuje pokrewny koniec skojarzenia z liczebność zero lub jeden.Represents a related end of an association with a multiplicity of zero or one.

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 jednostki odwołania.The entity type of the reference.

Dziedziczenie
EntityReference<TEntity>
Atrybuty

Przykłady

Ten przykład pokazuje, jak używać EntityReference<TEntity> obiektu do zmiany relacji między SalesOrderHeader obiektem a powiązanym Address obiektem, który reprezentuje adres wysyłkowy zamówienia.This example shows how to use the EntityReference<TEntity> object to change a relationship between a SalesOrderHeader object and a related Address object that represents the shipping address for the order.


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

' Define the order and new address IDs. 
Dim orderId As Integer = 43669
Dim addressId As Integer = 26

Using context As New AdventureWorksEntities()
    ' Get the billing address to change to. 
    Dim address As Address = context.Addresses.Single(Function(c) c.AddressID = addressId)

    ' Get the order being changed. 
    Dim order As SalesOrderHeader = context.SalesOrderHeaders.Single(Function(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 Not order.Address.Equals(address) Then
        ' Use Address navigation property to change the association. 
        order.Address = address

        ' Write the changed billing street address. 
        Console.WriteLine("Changed street: " & order.Address.AddressLine1)
    End If

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

    ' Write the current billing street address. 
    Console.WriteLine("Current street: " & order.Address.AddressLine1)
End Using

Uwagi

EntityReference<TEntity>Obiekt jest zwracany przez właściwość nawigacji, gdy powiązane zakończenie ma liczebność zero lub jeden.An EntityReference<TEntity> object is returned by a navigation property when the related end has a multiplicity of zero or one. Aby uzyskać więcej informacji, zobacz element NavigationProperty (CSDL).For more information, see NavigationProperty Element (CSDL).

EntityReference<TEntity>Obiekt może mieć odpowiadającą EntityCollection<TEntity> (relację "jeden do wielu") lub EntityReference<TEntity> (relacja jeden do jednego) na drugim końcu relacji.An EntityReference<TEntity> object might have a corresponding EntityCollection<TEntity> (one-to-many relationship) or EntityReference<TEntity> (one-to-one relationship) at the other end of the relationship. Gdy EntityReference<TEntity> i EntityCollection<TEntity> model sprzeciwia się zakończeniu tej samej relacji, integralność relacji jest zachowywana na poziomie obiektu.When an EntityReference<TEntity> and an EntityCollection<TEntity> model opposing ends of the same relationship, the integrity of the relationship is maintained at the object level.

Klasa ta nie może być dziedziczona.This class cannot be inherited.

Konstruktory

EntityReference<TEntity>()

Tworzy nowe wystąpienie klasy EntityReference<TEntity>.Creates a new instance of EntityReference<TEntity>.

Właściwości

EntityKey

Zwraca klucz dla powiązanego obiektu.Returns the key for the related object.

(Odziedziczone po EntityReference)
IsLoaded

Pobiera wartość wskazującą, czy wszystkie powiązane obiekty zostały załadowane.Gets a value that indicates whether all related objects have been loaded.

(Odziedziczone po RelatedEnd)
RelationshipName

Pobiera nazwę relacji, w której uczestniczą pokrewne zakończenie.Gets the name of the relationship in which this related end participates.

(Odziedziczone po RelatedEnd)
RelationshipSet

Pobiera odwołanie do metadanych powiązanego końca.Gets a reference to the metadata for the related end.

(Odziedziczone po RelatedEnd)
SourceRoleName

Pobiera nazwę roli na końcu źródła relacji.Gets the role name at the source end of the relationship.

(Odziedziczone po RelatedEnd)
TargetRoleName

Pobiera nazwę roli na końcu elementu docelowego relacji.Gets the role name at the target end of the relationship.

(Odziedziczone po RelatedEnd)
Value

Pobiera lub ustawia powiązany obiekt zwrócony przez to EntityReference<TEntity> .Gets or sets the related object returned by this EntityReference<TEntity>.

Metody

Attach(TEntity)

Tworzy relację wiele-do-jednego lub jeden-do-jednego między dwoma obiektami w kontekście obiektu.Creates a many-to-one or one-to-one relationship between two objects in the object context.

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

Definiuje relację między dwoma dołączonymi obiektami.Defines a relationship between two attached objects.

(Odziedziczone po RelatedEnd)
CreateSourceQuery()

Tworzy równoważne zapytanie obiektu, które zwraca powiązany obiekt.Creates an equivalent object query that returns the related object.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.Determines whether the specified object is equal to the current object.

(Odziedziczone po Object)
GetEnumerator()

Zwraca wartość IEnumerator , która wykonuje iterację kolekcji obiektów pokrewnych.Returns an IEnumerator that iterates through the collection of related objects.

(Odziedziczone po RelatedEnd)
GetHashCode()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Odziedziczone po Object)
GetType()

Pobiera Type bieżące wystąpienie.Gets the Type of the current instance.

(Odziedziczone po Object)
Load()

Gdy jest zastępowany w klasie pochodnej, ładuje obiekt lub obiekty powiązane do pokrewnego końca z opcją scalania domyślnego.When overridden in a derived class, loads the related object or objects into the related end with the default merge option.

(Odziedziczone po RelatedEnd)
Load(MergeOption)

Ładuje obiekt powiązany dla tego elementu EntityReference<TEntity> z określoną opcją scalania.Loads the related object for this EntityReference<TEntity> with the specified merge option.

MemberwiseClone()

Tworzy skróconą kopię bieżącego elementu Object .Creates a shallow copy of the current Object.

(Odziedziczone po Object)
Merge<TEntity>(IEnumerable<TEntity>, MergeOption, Boolean)

Scala powiązane jednostki z lokalną EntityCollection<TEntity> .Merges related entities into the local EntityCollection<TEntity>.

(Odziedziczone po RelatedEnd)
OnDeserialized(StreamingContext)

Używane wewnętrznie do deserializacji obiektów Entity wraz z RelationshipManager wystąpieniami.Used internally to deserialize entity objects along with the RelationshipManager instances.

(Odziedziczone po RelatedEnd)
OnRefDeserialized(StreamingContext)

Ta metoda jest używana wewnętrznie do serializacji powiązanych obiektów Entity.This method is used internally to serialize related entity objects.

OnSerializing(StreamingContext)

Ta metoda jest używana wewnętrznie do serializacji powiązanych obiektów Entity.This method is used internally to serialize related entity objects.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)
ValidateEntityForAttach<TEntity>(TEntity, Int32, Boolean)

Określa, czy obiekt może być dołączony do lokalnej kolekcji lub odwołania.Determines whether an object can be attached to the local collection or reference.

(Odziedziczone po RelatedEnd)
ValidateLoad<TEntity>(MergeOption, String)

Zapewnia, że obiekt lub obiekty powiązane można pomyślnie załadować do lokalnego kolekcji lub odwołania.Ensures that the related object or objects can be successfully loaded into the local collection or reference.

(Odziedziczone po RelatedEnd)
ValidateOwnerForAttach()

Zapewnia, że obiekt, do którego należy pokrewne zakończenie, obsługuje operację Attach.Ensures that the object to which the related end belongs supports an attach operation.

(Odziedziczone po RelatedEnd)

Zdarzenia

AssociationChanged

Występuje po dokonaniu zmiany w powiązanym końcu.Occurs when a change is made to a related end.

(Odziedziczone po RelatedEnd)

Jawne implementacje interfejsu

IRelatedEnd.Add(IEntityWithRelationships)

Dodaje obiekt do powiązanego końca.Adds an object to the related end.

(Odziedziczone po RelatedEnd)
IRelatedEnd.Add(Object)

Dodaje obiekt do powiązanego końca.Adds an object to the related end.

(Odziedziczone po RelatedEnd)
IRelatedEnd.Attach(IEntityWithRelationships)

Dołącza obiekt w powiązanym końcu.Attaches an object at the related end.

(Odziedziczone po RelatedEnd)
IRelatedEnd.Attach(Object)

Dołącza obiekt do powiązanego końca.Attaches an object to the related end.

(Odziedziczone po RelatedEnd)
IRelatedEnd.CreateSourceQuery()

Zwraca wartość IEnumerable reprezentującą obiekty, które należą do powiązanego końca.Returns an IEnumerable that represents the objects that belong to the related end.

(Odziedziczone po RelatedEnd)
IRelatedEnd.Remove(IEntityWithRelationships)

Usuwa obiekt z kolekcji w powiązanym końcu.Removes an object from the collection at the related end.

(Odziedziczone po RelatedEnd)
IRelatedEnd.Remove(Object)

Usuwa obiekt z pokrewnego końca, jeśli obiekt jest częścią powiązanego końca.Removes an object from the related end if the object is part of the related end.

(Odziedziczone po RelatedEnd)

Dotyczy