是否可以在 EntityFramework 中将 Select(l=> new{}) 与 SelectMany 一起使用

2023-12-05

我正在尝试一些我不太确定的事情,但我想在这里问是否可能。

能做到吗?

public IQueryable<Info> GetInfo(int count, byte languageId)
        {
            return db.Info.SelectMany(i => i.LanguageInfo)
                              .Where(l => l.Language.id == languageId)
                              .Select(l => new Info {   AddDate = l.Info.AddDate,
                                                        Description = l.Description,
                                                        EntityKey = l.Info.EntityKey,
                                                        id = l.Info.id,
                                                        Title = l.Title,
                                                        ViewCount = l.Info.ViewCount }
                                                        )
                              .OrderByDescending(i => i.id)
                              .Take(count);
        }

当执行这个方法时我得到一个错误

实体或复杂类型 “GuideModel.Info”不能 在 LINQ to Entities 中构建 询问。

是“不可能”的意思吗?

谢谢


该错误本质上表明实体框架不知道如何创建 Info 对象,因为它未绑定到表对象。 (换句话说,Select致电IQueryable无法转换为等效的 SQL。)您可以执行Select通过以下方式投影到客户端:

public IQueryable<Info> GetInfo(int count, byte languageId)
{
    return db.Info.SelectMany(i => i.LanguageInfo)
                      .Where(l => l.Language.id == languageId)
                      .Take(count)
                      .AsEnumerable()
                      .Select(l => new Info {   AddDate = l.Info.AddDate,
                                                Description = l.Description,
                                                EntityKey = l.Info.EntityKey,
                                                id = l.Info.id,
                                                Title = l.Title,
                                                ViewCount = l.Info.ViewCount }
                                                )
                      .OrderByDescending(i => i.id);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以在 EntityFramework 中将 Select(l=> new{}) 与 SelectMany 一起使用 的相关文章

  • 转换 const void*

    我有一个函数返回一个const void 我想用它的信息作为char 我可以将它投射为 C 风格的罚款 char variable但是当我尝试使用reinterpret cast like reinterpret cast
  • 如何在类文件中使用 Url.Action() ?

    如何在 MVC 项目的类文件中使用 Url Action Like namespace 3harf public class myFunction public static void CheckUserAdminPanelPermissi
  • 循环遍历 C 结构中的元素以提取单个元素的值和数据类型

    我有一个要求 我有一个 C 语言的大结构 由大约 30 多个不同数据类型的不同元素组成 typedef struct type1 element1 type2 element2 type3 element3 type2 element4 1
  • 无法注册时间触发的后台任务

    对于 Windows 8 应用程序 在 C Xaml 中 我尝试注册后台任务 很难说 但我想我的后台任务已正确注册 但是当我单击调试位置工具栏上的后台任务名称时 我的应用程序停止工作 没有任何消息 我查看了事件查看器上的日志 得到 具有入口
  • 强制初始化模板类的静态数据成员

    关于模板类的静态数据成员未初始化存在一些问题 不幸的是 这些都没有能够帮助我解决我的具体问题的答案 我有一个模板类 它有一个静态数据成员 必须为特定类型显式实例化 即必须专门化 如果不是这种情况 使用不同的模板函数应该会导致链接器错误 这是
  • 获取没有显式特征的整数模板参数的有符号/无符号变体

    我希望定义一个模板类 其模板参数始终是整数类型 该类将包含两个成员 其中之一是类型T 另一个作为类型的无符号变体T 即如果T int then T Unsigned unsigned int 我的第一直觉是这样做 template
  • 从 SQLCE 4 迁移到 SQL Server 2008

    因此 作为早期采用者 我开发了一个基于 SQLCE4 ASP Net MVC3 和实体框架CTP5 http www microsoft com downloads en details aspx FamilyID 35adb688 f8a
  • 在 VS 中运行时如何查看 C# 控制台程序的输出?

    我刚刚编写了一个名为 helloworld 的聪明程序 它是一个 C NET 4 5 控制台应用程序 在扭曲的嵌套逻辑迷宫深处 使用了 Console WriteLine 当我在命令行运行它时 它会运行并且我会看到输出 我可以执行其他命令并
  • 如何使用 x64 运行 cl?

    我遇到了和这里同样的问题致命错误 C1034 windows h 未设置包含路径 https stackoverflow com questions 931652 fatal error c1034 windows h no include
  • 如果输入被重定向则执行操作

    我想知道如果我的输入被重定向 我应该如何在 C 程序中执行操作 例如 假设我有已编译的程序 prog 并且我将输入 input txt 重定向到它 我这样做 prog lt input txt 我如何在代码中检测到这一点 一般来说 您无法判
  • 将二变量 std::function 转换为单变量 std::function

    我有一个函数 它获取两个值 x 和 y 并返回结果 std function lt double double double gt mult double x double y return x y 现在我想得到一个常量 y 的单变量函数
  • 如何在 C# 中创建异步方法?

    我读过的每一篇博客文章都会告诉您如何在 C 中使用异步方法 但由于某些奇怪的原因 从未解释如何构建您自己的异步方法来使用 所以我现在有这段代码使用我的方法 private async void button1 Click object se
  • 比较:接口方法、虚方法、抽象方法

    它们各自的优点和缺点是什么 接口方法 虚拟方法 抽象方法 什么时候应该选择什么 做出这一决定时应牢记哪些要点 虚拟和抽象几乎是一样的 虚方法在基类中有一个实现 可以选择重写 而抽象方法则没有 并且must在子类中被覆盖 否则它们是相同的 在
  • 将 Lambda 表达式树与 IEnumerable 结合使用

    我一直在尝试了解有关使用 Lamba 表达式树的更多信息 因此我创建了一个简单的示例 这是代码 如果作为 C 程序粘贴到 LINQPad 中 它可以工作 void Main IEnumerable
  • Visual Studio 2015 - Web 项目上缺少共享项目参考选项卡

    我从 MSDN 订阅升级到 Visual Studio 2015 因为我非常兴奋地阅读有关共享项目的信息 当我们想要做的只是重用代码时 不再需要在依赖项中管理 21382 个 nuget 包 所以我构建了一个测试共享项目 其中包含一些代码
  • Angular 4 中的箭头函数(Lambda 函数)

    我对lambda知之甚少 lambda表达式被视为一个函数 我们有很多方法可以做到这一点 这是我的简单功能TypeScript file byPan card1 card2 return card1 pan card2 pan 我在 HTM
  • EntityFramework 6.0.0.0 读取数据,但不插入

    我创建了一个基于服务的数据库 folderName gt Add New Item gt Data gt Service based Database文件到 WPF 应用程序中 然后我用过Database First方法并创建了Person
  • Visual Studio 2015 EDMX 模型浏览器和图表丢失

    我最近更新到 Visual Studio 2015 打开我的解决方案并运行 直到我决定将一个实体添加到我的 edmx 中 因此 我双击 edmx 文件来打开图表 或者至少是模型浏览器 但它只打开一个 XML 页面 我检查了安装程序中任何丢失
  • 是否允许全局静态标识符以单个 _ 开头?

    换句话说 可能static 文件范围 全局变量恰好以一个下划线开头 而不会产生与 C 实现发生名称冲突的可能性 https www gnu org software libc manual html node Reserved Names
  • 我可以使用 lambda 函数或 std::function 对象来代替函数指针吗?

    我有一个需要使用的库 它定义了以下内容 typedef void CallbackFunction const int i 并且有一个注册回调的函数 如下所示 void registerCallback CallbackFunction p

随机推荐

  • 为什么我们不能在派生类中使用带参数的构造函数

    为什么这是不可能的 使用构造函数参数实例化 DerivedClass 时出现以下编译器错误 GenericParameterizedConstructor DerivedClass 不包含采用 1 个参数的构造函数 但调用一个非常相似的方法
  • 嵌套环境变量

    我正在尝试制作一个文件 要求您提供用户名和密码并进行注册 注册时 密码保存在变量中 问题是我必须为这些变量设置名称 这些名称将在您写下用户名时输入 例如 我需要用户 john 的密码 当用户写下用户名 john 时 它会存储在变量中 use
  • 表格视图中的滚动底部和性能

    我需要滚动到底部 我有一个聊天应用程序 例如 Whatsapp 因此 当视图出现时 表视图应该显示最后一行 我通过以下行实现了这一点并且效果很好 tableView setContentOffset CGPointMake 0 CGFloa
  • 如何用 Javascript 改变 CSS 样式?

    我有一个像这样的数组 var colors 1 FFFF00 2 FF0000 3 80FF00 4 00FFFF 5 FF00FF JavaScript 是这样的 var color Math floor Math random 5 1
  • 使用 MapStruct 将抽象类映射到 DTO

    我发现了很多与此相关的主题 但在我看来 所有解决方案都走向了错误的方向 那么 在这种情况下我该如何使用 MapStruct 映射 抽象类人 public abstract class Person implements Serializab
  • VB.NET:如何知道哪个系统空闲的时间?

    我正在制作一个正在实施的应用程序自动监控关闭当系统空闲时 即当用户未与系统交互时 我找到了一个链接 http www codeproject com KB system SystemIdleTimerComponent aspx 它确实提供
  • kableextra 表列中的背景颜色

    我有一个简单的 RMarkdown 文档 以 pdf 格式导出 其中包含一个只有 2 列的 kablextra 表 参见图片 我试图将两列的背景设置为蓝色阴影 其中高值用较深的颜色表示 低值用较浅的颜色表示 值的顺序不能更改 因为它们代表月
  • 如何判断两个字符串数组是否等于其他数组[重复]

    这个问题在这里已经有答案了 可能的重复 比较两个 List 是否相等 如何判断两个字符串数组是否相等 我用过这个 但它不起作用 即使两者的内容相同 string array1 new string A B string array2 new
  • 如何通过 flutter 从网站或(网络抓取)收集数据?

    我需要进行网络抓取并从网站收集数据https ipcost com并在我的 Flutter 应用程序中使用收集到的数据 在本例中为我的 IP 详细信息 我的问题是如何获取这些信息并将其显示在用户界面中 我尝试了 web scraper 包
  • 如何确定哪一行导致了 404 错误?

    对于 GET 请求 我遇到了严重的重复错误 404 not found 该调用在 JavaScript 控制台中看起来像这样 GET some path undefined 404 Not Found 它右边的所有内容是 undefined
  • MySQL - 如果表不存在则忽略查询

    我有这张桌子叫tableA它可能不存在于某些数据库中 我希望在执行此操作时忽略选择查询语句tableA数据库中不存在 我尝试从信息模式中选择计数 但其中之一if else声明仍然有select from tableA 这仍然会给我一个错误
  • NSNumberFormatter 用于舍入浮点值

    我有一个 CGFloat 值 我想将其四舍五入到小数点后 3 位数字 我该怎么做 Thanks NSString value NSString stringWithFormat 3f theFloat
  • Grails 2.1 单元测试命令对象 mockForConstraintsTests 不起作用?

    我对此命令对象使用了手动编写以及 Grails 生成的单元测试 package myapp grails validation Validateable class SearchCommand String basisBuild Strin
  • 在 gdb 中调用 std::~basic_string()

    根据 EvanED 在https stackoverflow com a 11311786 890753我创建了一个gdb命令newstr创建一个新的 std string 并将其放入 gdb 便利变量中 define newstr set
  • 在 Python 中使用用户输入调用/选择变量(浮点值)

    我一直在从事一个计算物理项目 绘制化学反应物之间的相关速率以显示振荡行为 并取得了相当大的成功 然而 我的一个模拟涉及两个以上的主动振荡剂 实际上是五个 这显然不适合任何单一的视觉图 因此 我的方案是让用户选择他们想要分别在 x 轴和 y
  • 为什么编译器隐式类型转换不适用于作为扩展接口实现的文字类型属性?

    为什么编译器隐式类型转换不适用于作为扩展接口实现的文字类型属性 Example typescript 3 4 5 interface INumContainer num 1 2 class myClass implements INumCo
  • 当使用包含 ~、波形符的路径时,file_exists() 返回 false

    所以我有以下路径 my user path to dir 当我将它传递给file exists 效果很好 但是 当我将其更改为 username path to dir 它返回 false realpath username path to
  • 在 Ms 图控件中使用对数刻度

    我试图创建一个图表 其 x 轴以 10 为底的对数刻度 范围从 1 到 1000 我似乎能够在设计时创建该轴 但每当加载表单时 我都会收到一条错误消息 图表面积轴 该轴不能使用对数刻度 这是 MSChart 控件的限制吗 为什么我无法在 X
  • SurfaceView的截屏

    在上图中我有一个SurfaceView和一个Button named Capture SurfaceView正在显示相机预览 所以 我想要截图surfaceview当我点击Capture按钮 我尝试了很多例子和答案 但没有一个有效 我刚刚得
  • 是否可以在 EntityFramework 中将 Select(l=> new{}) 与 SelectMany 一起使用

    我正在尝试一些我不太确定的事情 但我想在这里问是否可能 能做到吗 public IQueryable