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 свойству, использует тот же формат, что и строка, передаваемая методу IncludeObjectQuery<T>. Примеры использования путей запроса для автоматической загрузки связанных объектов см. в разделе "Практическое руководство. Использование путей запроса к результатам фигуры".
Include Если свойство используется для указания путей запроса, свойства связанных сущностей можно использовать только для привязки данных только для чтения. Если связанные объекты явно не включены в путь запроса, дескрипторы свойств по-прежнему доступны для привязки данных, но свойства сами возвращают значения NULL. В этом случае связанные объекты должны быть явно загружены для отображения их значений. Дополнительные сведения см. в разделе "Загрузка связанных объектов".