DataServiceContext Класс

Определение

DataServiceContext представляет контекст среды выполнения службы данных.

public ref class DataServiceContext
public class DataServiceContext
type DataServiceContext = class
Public Class DataServiceContext
Наследование
DataServiceContext

Примеры

В следующем примере показано, как использовать контекст DataServiceContext, созданный инструментом «Добавить ссылку на службу» для неявного выполнения запроса к службе данных Northwind, возвращающей всех клиентов. URI запрашиваемого набора сущностей Customers автоматически определяется контекстом. Запрос выполняется неявно при запуске перечисления. Служба данных Northwind создается при завершении службы данных WCF.

// Create the DataServiceContext using the service URI.
NorthwindEntities context = new NorthwindEntities(svcUri);

// Define a new query for Customers.
DataServiceQuery<Customer> query = context.Customers;

try
{
    // Enumerate over the query result, which is executed implicitly.
    foreach (Customer customer in query)
    {
        Console.WriteLine("Customer Name: {0}", customer.CompanyName);
    }
}
catch (DataServiceQueryException ex)
{
    throw new ApplicationException(
        "An error occurred during query execution.", ex);
}
' Create the DataServiceContext using the service URI.
Dim context = New NorthwindEntities(svcUri)

' Define a new query for Customers.
Dim query As DataServiceQuery(Of Customer) = context.Customers

Try
    ' Enumerate over the query result, which is executed implicitly.
    For Each customer As Customer In query
        Console.WriteLine("Customer Name: {0}", customer.CompanyName)
    Next
Catch ex As DataServiceQueryException
    Throw New ApplicationException( _
            "An error occurred during query execution.", ex)
End Try

Комментарии

Службы данных WCF не имеют состояния, но DataServiceContext не является. На клиентском компьютере состояние поддерживается между операциями, что обеспечивает поддержку таких возможностей, как управление обновлениями. Этот класс и класс DataServiceQuery, представляющий конкретный HTTP-запрос к службе данных, являются двумя основными классами в клиентской библиотеке.

Конструкторы

DataServiceContext(Uri)

Инициализирует новый экземпляр класса DataServiceContext указанным значением serviceRoot.

Свойства

ApplyingChanges

Получает значение, указывающее, применяет ли DataServiceContext в настоящее время изменения в отслеживаемых объектах.

BaseUri

Возвращает абсолютный URI, идентифицирующий корневой адрес целевой службы данных.

Credentials

Получает или задает сведения об аутентификации, которые используются всеми запросами, созданными с помощью объекта DataServiceContext.

DataNamespace

Получает или задает пространство имен XML для элементов данных полезной нагрузки Atom, не являющихся элементами метаданных.

Entities

Получает список всех ресурсов, которые в настоящее время отслеживаются с помощью DataServiceContext.

IgnoreMissingProperties

Получает или задает для свойств, считанных из типа, необходимость сопоставления со свойствами типа на стороне клиента.

IgnoreResourceNotFoundException

Возвращает или задает исключение, возникающие в случае, если служба данных возвращает ошибку 404 (ресурс не найден).

Links

Возвращает коллекцию всех ассоциаций или ссылок, которые в настоящее время отслеживаются с помощью объекта DataServiceContext.

MergeOption

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

ResolveName

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

ResolveType

Возвращает или задает функцию для переопределения параметра разрешения типа по умолчанию, который используется клиентской библиотекой при получении сущностей из службы данных.

SaveChangesDefaultOptions

Возвращает или задает значения SaveChangesOptions, которые используются методом SaveChanges().

Timeout

Получает или задает параметр времени ожидания, используемый при отправке базового HTTP-запроса службе данных.

TypeScheme

Возвращает или задает URI, используемый для указания схемы типа, используемой службой.

UsePostTunneling

Возвращает или задает логическое значение, указывающее, следует ли использовать POST-туннелирование.

Методы

AddLink(Object, String, Object)

Добавляет указанную ссылку к набору отслеживаемых объектов DataServiceContext.

AddObject(String, Object)

Добавляет указанный объект к набору отслеживаемых объектов DataServiceContext.

AddRelatedObject(Object, String, Object)

Добавляет связанный объект к контексту и создает ссылку, которая определяет отношение между двумя объектами в одном запросе.

AttachLink(Object, String, Object)

Уведомляет DataServiceContext о начале отслеживания указанной ссылки, которая определяет связь между объектами сущности.

AttachTo(String, Object)

Уведомляет DataServiceContext о начале отслеживания указанного ресурса и предоставляет расположение ресурса в рамках указанного набора ресурсов.

AttachTo(String, Object, String)

Уведомляет DataServiceContext о начале отслеживания указанного ресурса и предоставляет расположение ресурса в указанном наборе ресурсов.

BeginExecute<T>(DataServiceQueryContinuation<T>, AsyncCallback, Object)

Асинхронно отправляет запрос в службу данных для получения следующей страницы данных в результатах запроса, разбитых на страницы.

BeginExecute<TElement>(Uri, AsyncCallback, Object)

Асинхронно отправляет запрос таким образом, чтобы этот вызов не блокировал обработку на время ожидания результатов от службы.

BeginExecuteBatch(AsyncCallback, Object, DataServiceRequest[])

Асинхронно передает группу запросов в службу данных в виде пакета.

BeginGetReadStream(Object, DataServiceRequestArgs, AsyncCallback, Object)

Выполняет асинхронное возвращение двоичных данных свойств для указанной сущности в виде потока данных (включая заголовки заданного сообщения).

BeginLoadProperty(Object, String, AsyncCallback, Object)

Асинхронно загружает значение указанного свойства из службы данных.

BeginLoadProperty(Object, String, DataServiceQueryContinuation, AsyncCallback, Object)

Асинхронно загружает следующую страницу связанных сущностей из службы данных с использованием предоставленного объекта-продолжения запроса.

BeginLoadProperty(Object, String, Uri, AsyncCallback, Object)

Асинхронно загружает страницу связанных сущностей из службы данных с использованием предоставленного URI следующей ссылки.

BeginSaveChanges(AsyncCallback, Object)

Асинхронно пересылает отложенные изменения в службу данных, собирая их с помощью DataServiceContext с момента последнего сохранения изменений.

BeginSaveChanges(SaveChangesOptions, AsyncCallback, Object)

Асинхронно пересылает отложенные изменения в службу данных, собирая их с помощью DataServiceContext с момента последнего сохранения изменений.

CancelRequest(IAsyncResult)

Пытается отменить операцию, связанную с полученным объектом IAsyncResult.

CreateQuery<T>(String)

Создает запрос к службе данных для данных указанного универсального типа.

DeleteLink(Object, String, Object)

Изменяет состояние ссылки на удаленное в списке ссылок, который отслеживается DataServiceContext.

DeleteObject(Object)

Изменяет состояние указанного объекта на удаленное в DataServiceContext.

Detach(Object)

Удаляет сущность из списка сущностей, отслеживаемых DataServiceContext.

DetachLink(Object, String, Object)

Удаляет указанную ссылку из списка ссылок, отслеживаемых DataServiceContext.

EndExecute<TElement>(IAsyncResult)

Вызывается для завершения BeginExecute<TElement>(Uri, AsyncCallback, Object).

EndExecuteBatch(IAsyncResult)

Вызывается для завершения BeginExecuteBatch(AsyncCallback, Object, DataServiceRequest[]).

EndGetReadStream(IAsyncResult)

Вызывается для завершения асинхронной операции извлечения двоичного свойства в виде потока.

EndLoadProperty(IAsyncResult)

Вызывается для завершения операции BeginLoadProperty(Object, String, AsyncCallback, Object).

EndSaveChanges(IAsyncResult)

Вызывается для завершения операции BeginSaveChanges(AsyncCallback, Object).

Equals(Object)

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

(Унаследовано от Object)
Execute<T>(DataServiceQueryContinuation<T>)

Отправляет запрос в службу данных для получения следующей страницы данных в результатах запроса, разбитых на страницы.

Execute<TElement>(Uri)

Пересылает запрос в службу данных для выполнения указанного URI.

ExecuteBatch(DataServiceRequest[])

Передает группу запросов в службу данных в виде пакета.

GetEntityDescriptor(Object)

Возвращает EntityDescriptor для полученного объекта сущности.

GetHashCode()

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

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

Получает LinkDescriptor для указанной ссылки, которая определяет связь между двумя сущностями.

GetMetadataUri()

Возвращает URI расположения метаданных .edmx.

GetReadStream(Object)

Получает двоичные данные свойств для указанной сущности в виде потока данных.

GetReadStream(Object, DataServiceRequestArgs)

Получает двоичные данные свойств для указанной сущности в виде потока данных (включая заголовки заданного сообщения).

GetReadStream(Object, String)

Получает двоичные данные свойств для указанной сущности в виде потока данных (включая заголовок заданного сообщения Accept).

GetReadStreamUri(Object)

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

GetType()

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

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

Загружает отложенное содержание для указанного свойства из службы данных.

LoadProperty(Object, String, DataServiceQueryContinuation)

Загружает следующую страницу связанных сущностей из службы данных с использованием предоставленного объекта-продолжения запроса.

LoadProperty(Object, String, Uri)

Загружает страницу связанных сущностей с использованием предоставленного следующего URI ссылки.

LoadProperty<T>(Object, String, DataServiceQueryContinuation<T>)

Загружает следующую страницу связанных сущностей из службы данных с использованием предоставленного универсального объекта-продолжения запроса.

MemberwiseClone()

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

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

Сохраняет изменения, которые DataServiceContext отслеживает в хранилище.

SaveChanges(SaveChangesOptions)

Сохраняет изменения, которые DataServiceContext отслеживает в хранилище.

SetLink(Object, String, Object)

Уведомляет DataServiceContext, что имеется новая ссылка между указанными объектами и что ссылка представлена свойством, указанным параметром sourceProperty.

SetSaveStream(Object, Stream, Boolean, DataServiceRequestArgs)

Назначает новый поток данных двоичным свойством какой-либо сущности с учетом параметров, указанных в сообщении запроса.

SetSaveStream(Object, Stream, Boolean, String, String)

Назначает новый поток данных двоичным свойством какой-либо сущности. Указанные заголовки Content-Type и Slug включены в сообщение запроса.

ToString()

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

(Унаследовано от Object)
TryGetEntity<TEntity>(Uri, TEntity)

Тестовые извлечение сущности, отслеживаемой DataServiceContext со ссылкой на URI сущности.

TryGetUri(Object, Uri)

Извлекает канонический URI, связанный с указанной сущностью (если есть).

UpdateObject(Object)

Изменяет состояние указанного объекта в DataServiceContext на Modified.

События

ReadingEntity

Происходит после полного считывания данных сущности в объекте сущности.

SendingRequest

Происходит при создании нового HttpWebRequest.

WritingEntity

Происходит после того, как сущность полностью сериализуется в XML в сообщении запроса.

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

См. также раздел