0

我有以下查询,它工作正常

   var aaa = from d in _context.SubCategories
            join x in _context.CategoryLinks on d.ID equals x.SubCategoryID
            where x.CategoryID == CategoryID
            select new
            {
                 d.ID,
                 d.Name,
                 d.Code
            };

现在我想将它转换为 linq 方法语法,因为 imo 它看起来更干净,而不是“选择新”,我想将它投影到 DM.SubCategory 模型。

我怎么能做到这一点?我尝试了下面的代码,但在输入 cl.X 后,它不允许我选择任何列 在此处输入图像描述 CategoryLink 表仅用于检查类别和子类别之间是否存在链接。(包含 ID、CategoryID 和 SubCategoryID 以及相应的 FK)

投影到结果后解决,但仍然不知道为什么visual studio拒绝建议cl.X

_context.SubCategories
           .Join(_context.CategoryLinks,
              sc => sc.ID,
              cl => cl.SubCategoryID,
              (sc, cl) => new { SubCategory = sc, CategoryLinks = cl })
           .Select(x => x.SubCategory);
4

0 回答 0