Новые возможности служб WCF Data Services 5.0

Следующие функции, которые являются новыми в версии 3.0 служб OData, поддерживаются в этом выпуске служб Службы WCF Data Services.

  • Операторы All и Any
    OData теперь позволяет фильтровать веб-каналы на основе содержимого коллекции. С помощью новых операторов all и any можно фильтровать канал OData на основе свойств связанной коллекции или многозначного свойства.

    Клиентская библиотека .NET Framework теперь поддерживает использование операторов наборов All<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>) и Any<TSource>(IEnumerable<TSource>) в запросах LINQ. Дополнительные сведения см. в разделе Рекомендации по LINQ (службы WCF Data Services).

  • Свойства коллекции *
    OData теперь позволяет определять коллекции свойств типов в модели данных службы данных. Эти коллекции свойств содержат неупорядоченные коллекции примитивных или сложных типов.

  • Именованные потоки ресурсов
    OData теперь позволяет определить именованные потоки ресурсов для данной сущности. Это дает возможность иметь несколько потоков двоичных данных, связанных с данной сущностью. Дополнительные сведения см. в разделе Потоковый поставщик (службы WCF Data Services).

    Клиентская библиотека .NET Framework теперь позволяет получать доступ к именованным потокам ресурсов. Дополнительные сведения см. в разделе Работа с двоичными данными (службы WCF Data Services).

  • Новые типы данных
    OData задает следующие новые типы данных, которые поддерживаются Службы WCF Data Services:

    • Геопространственные типы*

      Теперь OData поддерживает геопространственные типы данных как новый набор примитивов. Дополнительные сведения см. в разделе Библиотека пространственных данных.

    • DateTimeOffset

    • TimeSpan

  • Запросы PATCH
    К стандарту HTTP был добавлен новый метод PATCH. OData теперь поддерживает этот новый метод HTTP. Службы WCF Data Services обрабатывает запросы PATCH таким же образом, как и запросы MERGE.

    Клиентская библиотека .NET Framework теперь позволяет запрашивать обновления в службе данных с помощью запроса PATCH. Дополнительные сведения см. в разделе Управление контекстом службы данных (службы WCF Data Services).

  • Поддержка заголовка Prefer
    OData теперь предоставляет клиентам возможность запрашивать, будут ли полезные данные возвращаться в ответ на запрос POST, PUT, MERGE или PATCH. Свое предпочтение клиент указывает в запросе с помощью значения заголовка Prefer. При использовании клиента платформы .NET Framework этот параметр управляется с помощью DataServiceContext. Дополнительные сведения см. в разделе Управление контекстом службы данных (службы WCF Data Services).

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

  • Заметки словаря
    OData поддерживает возможность расширения метаданных службы данных путем определения словарей. Службы WCF Data Services позволяет применять словари к модели данных с использованием заметок. Дополнительные сведения см. в статье Словари в службах WCF Data Services.

* Новая функция OData в настоящее время не поддерживается поставщиком Entity Framework.

В этом выпуске с помощью Службы WCF Data Services предоставлены следующие дополнительные функции:

  • Поддержка DbContext поставщиком Entity Framework
    Теперь Службы WCF Data Services позволяет использовать класс, который наследуется от DbContext в качестве источника данных поставщика Entity Framework, так же как класс, который наследуется от ObjectContext. DbContext является новым классом Code First, введенным в Entity Framework 4.1, который заменяет класс ObjectContext. Ранее, чтобы иметь возможность использовать объект DbContext в качестве источника данных, нужно было искать обходные пути.

  • Включение ссылок связей в ответ
    Протокол OData определяет метод установления связей между сущностями с использованием оператора $links в URI. Службы WCF Data Services теперь позволяет запрашивать включение службой данных этих ссылок в элементы записи в ответе. Это поведение управляется свойством конфигурации IncludeRelationshipLinksInResponse. Дополнительные сведения см. в разделе Настройка службы данных (службы WCF Data Services).

    Клиентская библиотека .NET Framework теперь использует ссылки связей при создании URI, которые отражают связанные сущности, если они присутствуют в ответе.

  • Свойства навигации производных типов
    В этой версии Службы WCF Data Services поддерживает возможность определять свойства навигации для производных типов. В предыдущих версиях свойства навигации могли быть заданы только для базовых типов.

  • Поддержка наборов сущностей с различными базовыми URI
    Протокол OData позволяет службе данных представлять доступ к наборам сущностей как к коллекциям, которые имеют различные базовые URI. Ранее при работе клиента платформы .NET Framework предполагалось, что все наборы сущностей совместно используют один и тот же базовый URI, определенный в DataServiceContext. Теперь можно определить делегат, который используется контекстом для разрешения URI для наборов сущностей, которые не имеют общего базового URI. Дополнительные сведения см. в разделе Управление контекстом службы данных (службы WCF Data Services).

См. также

Основные понятия

Управление версиями службы данных (службы WCF Data Services)

Общие сведения о службах WCF Data Services

Другие ресурсы

Приступая к работе со службами WCF Data Services