Невозможно построить объект (сложный) объект из запроса - PullRequest
0 голосов
/ 09 июня 2010

Эй, я новичок в entity, sql, c # и asp.net, так что это может быть легко исправлено.

Я пытаюсь отобразить все неактивные продукты, хранящиеся в моей таблице, которые называются продукты всетка данных.

var productQuery = from b in solutionContext.Version
                   where b.Product.Name == search && b.Product.ActiveNumber > b.VersionNumber
                   select new Product
                   {
                                   Name = b.Product.Name,
                                   Description = b.Product.Description,
                                   ID = b.ID,
                                   LastNumber = b.Product.LastNumber,
                                   MiddleNumber = b.Product.MiddleNumber,
                                   RSTATE = b.RSTATE,
                                   ActiveNumber = b.Product.ActiveNumber,
                                   LastModified = b.Product.LastModified,
                                   ParentID = b.Product.ParentID,
                                   ProductType = b.Product.ProductType
                  };

                  ProductsGrid.DataSource = productQuery;
                  ProductsGrid.DataBind();

Я получаю эту ошибку:

  • $ exception {"Сущность или сложный тип 'SolutionsModel.Product' нельзя создать в запросе LINQ to Entities. "} System.Exception {System.NotSupportedException}

Спасибо за любой совет!

1 Ответ

3 голосов
/ 09 июня 2010

Ошибка говорит о том, что вы не можете сгенерировать объект LINQ to Entities типа Product.Но вы можете вернуть его.Можете ли вы попытаться вернуть б.Продукт, который может работать правильно?

var productQuery = from b in solutionContext.Version
                   where b.Product.Name == search && b.Product.ActiveNumber > b.VersionNumber
                   select b.Product; 

                  ProductsGrid.DataSource = productQuery;
                  ProductsGrid.DataBind();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...