EntityDataSource.Include Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает выражение, определяющее связанные объекты для включения в результаты запроса.
public:
property System::String ^ Include { System::String ^ get(); void set(System::String ^ value); };
public string Include { get; set; }
member this.Include : string with get, set
Public Property Include As String
Значение свойства
Разделенный запятыми список путей запроса для возврата в результатах запроса.
Примеры
Следующая XML-разметка определяет путь запроса, возвращающий объекты, SalesOrderHeader
связанные с возвращенным Contact
объектом. При использовании каждого SalesOrderHeader
объекта также возвращаются связанные SalesOrderDetail
объекты и Address
.
<asp:EntityDataSource ID="ContactDataSource" runat="server"
AutoGenerateWhereClause="True" ConnectionString="name=AdventureWorksEntities"
DefaultContainerName="AdventureWorksEntities" EnableDelete="True"
EnableInsert="True" EnableUpdate="True" EntitySetName="Contact"
Include="SalesOrderHeader.SalesOrderDetail, SalesOrderHeader.Address">
<WhereParameters>
<asp:ControlParameter ControlID="customerId" Name="ContactID"
PropertyName="Text" />
</WhereParameters>
</asp:EntityDataSource>
Предыдущий пример XML такой же, как и следующий ObjectQuery<T> с именем customers
:
ObjectQuery<Contact> customers =
context.Contact
.Where("it.ContactID = @ContactID",
new ObjectParameter("ContactID", customerId))
.Include("SalesOrderHeader.SalesOrderDetail")
.Include("SalesOrderHeader.Address");
Комментарии
Свойство IncludeEntityDataSource элемента управления задает разделенный запятыми список путей запросов, определяющих объекты, возвращаемые вместе с объектом, к которому был задан конкретный запрос. Каждое значение, разделенное запятыми, передается без изменений в виде отдельного вызова Include метода объекта , выполняемого ObjectQuery<T> Entity Framework. Этот запрос является источником данных, регулируемых элементом EntityDataSource управления . Свойство Include является аргументом, применяемым к объекту ObjectQuery<T> перед его выполнением.
Строка, предоставляемая свойству Include , использует тот же формат, что и строка, передаваемая Include в метод ObjectQuery<T>. Примеры использования путей запросов для автоматической загрузки связанных объектов см. в разделе Практическое руководство. Использование путей запросов для формирования результатов.
Include Если свойство используется для указания путей запроса, свойства связанных сущностей можно использовать только для привязки данных только для чтения. Если связанные объекты явно не включены в путь запроса, дескрипторы свойств по-прежнему доступны для привязки данных, но сами свойства возвращают значения NULL. В этом случае связанные объекты должны быть явно загружены для отображения их значений. Дополнительные сведения см. в разделе Загрузка связанных объектов.