Заполнение связанной сущности при запросе хранилища - PullRequest
1 голос
/ 27 марта 2012

В моем хранилище я получаю данные из своей таблицы TransportedMaterial.Я также «включаю» TransportedMaterialPacking для извлечения всех связанных данных в этой связанной таблице.В этой последней таблице я также хотел бы получить связанные данные MaterialPacking. Не знаю как?

enter image description here

На рисунке выше мы видим, что MaterialPacking имеет значение null (оно не было заполнено).

Вот модели:

public class TransportedMaterialPacking
{
    public int TransportedMaterialPackingID { get; set; }
    public MaterialPacking MaterialPacking { get; set; }
    public double Quantity { get; set; }
    public double? Width { get; set; }
    public double? Height { get; set; }
    public double? Length { get; set; }
}

public class MaterialPacking
{
    public int MaterialPackingID { get; set; }
    public string DescriptionFr { get; set; }
    public string DescriptionNl { get; set; }
}

Отношения такие:

TransportedMaterial >> TransportedMaterialPacking >> MaterialPacking

public static class ORMExtensions
{
    public static IQueryable<T> MyInclude<T, C>(this IQueryable<T> source, Expression<Func<T, C>> function)
        where C : class
        where T : class
    {
        return source.Include(function);
    }

Я использую Entity Framework.

Спасибо.

Ответы [ 2 ]

0 голосов
/ 27 марта 2012

Вы можете «каскадно» включить, выполнив в запросе что-то вроде foo.Include("NavigationProperty.SubNavigationProperty").

Редактировать Возможно использование нотации свойств для включения подвойств навигации, см., Например, this .

0 голосов
/ 27 марта 2012

Вы можете сделать .include ("nav1.nav2") для загрузки связанных сущностей

Я не знаю, будет ли работать .include (x => x.nav1.nav2)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...