Поделиться через


RelationshipManager Класс

Определение

Отслеживает связи между объектами в контексте объекта.

public ref class RelationshipManager
[System.Serializable]
public class RelationshipManager
[<System.Serializable>]
type RelationshipManager = class
Public Class RelationshipManager
Наследование
RelationshipManager
Атрибуты

Примеры

В этом примере к сущности добавляются новые SalesOrderHeader сущности Contact . Затем он получает все связанные концы из сущности Contact и отображает имя связи, имя исходной роли и имя целевой роли для каждого связанного конца.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    Contact contact = new Contact();

    // Create a new SalesOrderHeader.
    SalesOrderHeader newSalesOrder1 = new SalesOrderHeader();
    // Add SalesOrderHeader to the Contact.
    contact.SalesOrderHeaders.Add(newSalesOrder1);

    // Create another SalesOrderHeader.
    SalesOrderHeader newSalesOrder2 = new SalesOrderHeader();
    // Add SalesOrderHeader to the Contact.
    contact.SalesOrderHeaders.Add(newSalesOrder2);

    // Get all related ends
    IEnumerable<IRelatedEnd> relEnds =
        ((IEntityWithRelationships)contact).RelationshipManager
        .GetAllRelatedEnds();

    foreach (IRelatedEnd relEnd in relEnds)
    {
        Console.WriteLine("Relationship Name: {0}", relEnd.RelationshipName);
        Console.WriteLine("Source Role Name: {0}", relEnd.SourceRoleName);
        Console.WriteLine("Target Role Name: {0}", relEnd.TargetRoleName);
    }
}

Комментарии

RelationshipManager используется для отслеживания связей между объектами в контексте объекта. Для каждой связи, отслеженной в контексте объекта, существует один экземпляр класса RelationshipManager. Связи определяются связями в концептуальной модели. Дополнительные сведения см. в разделе Элемент Association (CSDL).

Методы

Create(IEntityWithRelationships)

Создает новый объект RelationshipManager.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetAllRelatedEnds()

Возвращает перечисление всех связанных элементов, управляемых диспетчером связей.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetRelatedCollection<TTargetEntity>(String, String)

Возвращает коллекцию EntityCollection<TEntity> связанных объектов с заданными именем связи и целевой роли.

GetRelatedEnd(String, String)

Возвращает коллекцию EntityCollection<TEntity> или EntityReference<TEntity> правильного типа для указанной целевой роли в связи.

GetRelatedReference<TTargetEntity>(String, String)

Возвращает ссылку EntityReference<TEntity> для связанного объекта, используя заданное сочетание имени связи и целевой роли.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
InitializeRelatedCollection<TTargetEntity>(String, String, EntityCollection<TTargetEntity>)

Инициализирует существующий объект EntityCollection<TEntity>, который был создан конструктором без параметров.

InitializeRelatedReference<TTargetEntity>(String, String, EntityReference<TTargetEntity>)

Инициализирует существующий объект EntityReference<TEntity>, который был создан конструктором без параметров.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
OnDeserialized(StreamingContext)

Используется внутренне для десериализации объектов сущности вместе с экземплярами RelationshipManager.

OnSerializing(StreamingContext)

Вызывается службами объектов для подготовки EntityKey к двоичной сериализации с сериализованной связью.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к