DataServiceContext Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет DataServiceContext контекст среды выполнения службы данных.
public ref class DataServiceContext
public class DataServiceContext
type DataServiceContext = class
Public Class DataServiceContext
- Наследование
-
DataServiceContext
Примеры
В следующем примере показано, как использовать DataServiceContext созданный средством add service Reference для неявного выполнения запроса к службе данных 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 класса с указанным |
Свойства
| Имя | Описание |
|---|---|
| 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 |
Возвращает или задает логическое значение, указывающее, следует ли использовать туннелирование после туннелирования. |
Методы
| Имя | Описание |
|---|---|
| AddLink(Object, String, Object) |
Добавляет указанную ссылку в набор объектов DataServiceContext , отслеживаемых. |
| AddObject(String, Object) |
Добавляет указанный объект в набор объектов, отслеживаемых DataServiceContext . |
| AddRelatedObject(Object, String, Object) |
Добавляет связанный объект в контекст и создает ссылку, которая определяет связь между двумя объектами в одном запросе. |
| AttachLink(Object, String, Object) |
Уведомляет DataServiceContext о начале отслеживания указанной ссылки, определяющей связь между объектами сущностей. |
| AttachTo(String, Object, String) |
Уведомляет DataServiceContext об отслеживании указанного ресурса и предоставляет расположение ресурса в указанном наборе ресурсов. |
| AttachTo(String, Object) |
Уведомляет 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, DataServiceRequestArgs) |
Возвращает данные двоичного свойства для указанной сущности в виде потока данных вместе с указанными заголовками сообщений. |
| GetReadStream(Object, String) |
Возвращает данные двоичного свойства для указанной сущности в виде потока данных с указанным заголовком сообщения Accept. |
| GetReadStream(Object) |
Возвращает данные двоичного свойства для указанной сущности в виде потока данных. |
| GetReadStreamUri(Object) |
Возвращает универсальный код ресурса (URI), используемый для возврата двоичных свойств данных в виде потока данных. |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| LoadProperty(Object, String, DataServiceQueryContinuation) |
Загружает следующую страницу связанных сущностей из службы данных с помощью предоставленного объекта продолжения запроса. |
| LoadProperty(Object, String, Uri) |
Загружает страницу связанных сущностей с помощью предоставленного URI следующей ссылки. |
| LoadProperty(Object, String) |
Загружает отложенное содержимое для указанного свойства из службы данных. |
| LoadProperty<T>(Object, String, DataServiceQueryContinuation<T>) |
Загружает следующую страницу связанных сущностей из службы данных с помощью предоставленного объекта продолжения универсального запроса. |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| SaveChanges() |
Сохраняет изменения, отслеживаемые DataServiceContext в хранилище. |
| SaveChanges(SaveChangesOptions) |
Сохраняет изменения, отслеживаемые DataServiceContext в хранилище. |
| SetLink(Object, String, Object) |
Уведомляет DataServiceContext о том, что новая связь существует между указанными объектами и что ссылка представлена свойством, указанным параметром |
| 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) |
Изменяет состояние указанного объекта в объекте DataServiceContextModified. |
События
| Имя | Описание |
|---|---|
| ReadingEntity |
Происходит после полного считывания данных сущности в объект сущности. |
| SendingRequest |
Возникает при создании нового HttpWebRequest . |
| WritingEntity |
Происходит после того, как сущность была полностью сериализована в XML в сообщении запроса. |