无法将类型"System.Linq.IQueryable< AnonymousType#1>"隐式转换为"System.Collections.Generic.IEnumerable< SubCateViewModel>"

无法将类型

问题描述:

当我尝试联接三个表ProductPhotoProductProductProductPhoto时遇到此问题.我尝试了很多情况,但没有解决.有人可以帮助我摆脱困境吗?感谢您的回复!

I got this problem when I'm trying join three tables ProductPhoto, Product, and ProductProductPhoto. I tried many case but it didn't work out. Anyone could help me get out of this? Thanks for replying!

private IEnumerable<SubCateViewModel> GetSubProduct()
            {
                var context = new AdvenDBEntities();
                var subcate = (from a in context.ProductPhotoes
                              join b in context.ProductProductPhotoes on a.ProductPhotoID equals b.ProductPhotoID
                              join c in context.Products on b.ProductID equals c.ProductID
                              join d in context.ProductSubcategories on c.ProductSubcategoryID equals d.ProductSubcategoryID
                              select new
                              {
                                  a.ProductPhotoID,
                                  a.ThumbnailPhotoFileName,
                                  c.ProductID,
                                  c.Name,
                                  d.NameofBike,
                                  d.isSelected,
                              }).AsQueryable();
                         return subcate;
            }

尝试以下代码伙伴.

private IEnumerable<SubCateViewModel> GetSubProduct()
                {
                    var context = new AdvenDBEntities();
                    var subcate = (from a in context.ProductPhotoes
                                  join b in context.ProductProductPhotoes on a.ProductPhotoID equals b.ProductPhotoID
                                  join c in context.Products on b.ProductID equals c.ProductID
                                  join d in context.ProductSubcategories on c.ProductSubcategoryID equals d.ProductSubcategoryID
                                  select new SubCateViewModel
                                  {
                                     ProductPhotoID =  a.ProductPhotoID,
                                      ThumbnailPhotoFileName = a.ThumbnailPhotoFileName,
                                     ProductID = c.ProductID,
                                      Name = c.Name,
                                      NameofBike = d.NameofBike,
                                      isSelected = d.isSelected,
                                  });
                             return subcate.AsEnumerable();
                }