Выбор столбцов: выражение "Включить путь" должно ссылаться на свойство навигации, определенное для типа.

Мне нужна помощь с оптимизацией лямбда-выражения.

юридические лица

    public class ProductGroup 
    {

        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        [Key]
        public int Id { get; set; }

        [Required]
        [Index(IsUnique = true)]
        [StringLength(50)]
        public string Code { get; set; }

        [Required]
        [StringLength(50)]
        public string Name { get; set; }

        public virtual ICollection<GroupProduct> GroupProducts { get; set; }

    }

    public class GroupProduct 
    {

            [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
            [Key]
            public int Id { get; set; }

            // Foreign Key
            public int ProductGroupId { get; set; }
            public int ProductId { get; set; }

            // Navigation Properties
            [Required]
            [ForeignKey("ProductGroupId")]
            public virtual ProductGroup ProductGroup { get; set; }

            [Required]
            [ForeignKey("ProductId")]
            public virtual Product Product { get; set; }    
        }

    public class Product
        {

            [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
            [Key]
            public int Id { get; set; }

            [Required]
            [Index(IsUnique = true)]
            [StringLength(50)]
            public string Code { get; set; }

            [Required]
            [StringLength(100)]
            public string Name{ get; set; }
    }

В настоящее время используется выражение

var q = context.ProductGroups.Where(s => s.Code == code)
            .Include(s => s.GroupProduct.Select(p => p.Product));

Есть много больше столбцов в Product Сущность. То, что я пытаюсь сделать, оптимизирует выражение так, когда SQL генерируется на Product.Code колонка выделена а не вся Product таблицы, вместе со связанной группой ProductProduct и группой ProductGroup.

Когда я пытаюсь "фильтровать" сущность Product, я получаю сообщение об ошибке:

Выражение "Включить путь" должно ссылаться на свойство навигации, определенное для типа. Используйте пунктирные пути для ссылочных свойств навигации и оператор Select для свойств навигации коллекции. Имя параметра: путь

Есть идеи?

0 ответов

Другие вопросы по тегам