Использование точечной нотации в службе подключения к бизнес-данным (BDC)

Дата последнего изменения: 19 апреля 2010 г.

Применимо к: SharePoint Server 2010

В этой статье
Пример 1. Ссылка на поле сложного типа
Пример 2. Доступ к коллекциям
Пример 3. Ссылки на поля со специальными символами

Структура данных, возвращаемая внешней системой, может содержать сложные структуры с несколькими уровнями элементов данных. В подключения к бизнес-данным (BDC) для доступа к любому уровню элементов данных можно использовать точечную нотацию. Точечная нотация — это представление элементов данных, аналогичное применяемому в C#. Для доступа к каждому элементу данных указывается его родительский элемент данных и имя элемента данных (если объемлющий элемент данных является структурой) или индекс элемента данных (если объемлющий элемент является коллекцией). Далее приводятся некоторые примеры использования точечной нотации.

Пример 1. Ссылка на поле сложного типа

Рассмотрим структуру Customer — внешний элемент, содержащий следующие поля:

  • CustomerID

  • Name

  • PhoneNumber

  • Address

    • Street

    • City

    • State

    • Zip

Поле Address является полем сложного типа. Предположим, что требуется отобразить следующие поля внешней структуры Customer:

  • Name

  • PhoneNumber

  • City

  • State

В данном случае эти поля можно получить с помощью индексатора в интерфейсе IEntityInstance, как показано в следующем примере кода.

IEntityInstance customerItem = customerEntity.FindSpecific (...);

customerItem["Name"]
customerItem["PhoneNumber"]
customerItem["Address.City"]
customerItem["Address.State"]

Пример 2. Доступ к коллекциям

С помощью BDC можно также обращаться к отдельным элементам внутри коллекции. Рассмотрим структуру Customer со следующими полями:

  • CustomerID

  • Name

  • PhoneNumber

  • Addresses (коллекция элементов Address)

    • Address

      • Street

      • City

      • State

      • Zip

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

  • CustomerID

  • Name

  • PhoneNumber

  • PrimaryAddressCity

  • PrimaryAddressState

В данном случае в возвращаемом параметре экземпляра метода SpecificFinder можно передать ссылки на поля City и State структуры Customer, как показано в следующем примере кода.

Customer.Addresses[0].City
Customer.Addresses[0].State

Пример 3. Ссылки на поля со специальными символами

Если имя содержит специальный символ (обратную косую черту \, точку . или квадратную скобку [), перед ним необходимо поставить знак \.

Рассмотрим структуру Customer со следующими полями:

  • CustomerID

  • Name

  • PhoneNumber

  • Address

    • Street

    • House\PropertyNo

    • City

    • State

    • Zip

Поле «House\PropertyNo» содержит специальный символ: \. Предположим, что требуется отобразить следующие поля внешней структуры Customer:

  • CustomerID

  • Name

  • PhoneNumber

  • House\PropertyNo

  • City

  • State

В данном случае в возвращаемом параметре экземпляра метода SpecificFinder можно передать ссылку на поле House\PropertyNo структуры Customer, как показано в следующем примере кода.

Customer.Address.House\\PropertyNo