当前位置: 首页 > 面试题库 >

如何在Entity Framework 5.0中获取作为查询结果的数据集?

柴琦
2023-03-14
问题内容

我不确定这是否可能。我可能正在为尝试执行的工作使用错误的工具。

假设我要执行以下操作:

我执行一个名为“ GetTableName”的函数,该函数返回要从中获取数据的SQL表的名称。

我执行另一个名为“ GetFields”的函数,该函数返回SQL表中一个或多个字段的名称。

我希望能够编写另一个函数,该函数将返回一个数据集(或其他通用对象),该数据集包含“ GetTableName”指定的表中的行以及“
GetFields”指定的字段中的行

我知道我可以使用旧的ADO.net接口执行此操作,但是是否有使用Entity Framework执行此操作的适当方法

需要强调的是,代码在编译时 不会 知道从SQL返回的数据的形状。


问题答案:

由于EF需要映射复杂的类型,因此有可能编写一个继承自ExpandoObject的类,然后您可以(使用大量编码)将其映射到DataTable类或按原样使用。然后,您基本上需要告诉EF以某种方式尝试映射到那些属性。但是,我认为这将是一段漫长而曲折的代码,重载和基本上重写EF:s对象映射的核心功能的旅程。

在本示例中可以看到,编写者动态创建模型的地方仍然很艰辛。您根据数据自动生成属性的部分:http :
//www.markzhou.com/blog/post/2011/06/02/Use-dynamic-type-in​​-Entity-
Framework-41-SqlQuery()
-method.aspx

如果需要DataTable,我真的建议您使用ADO.NET。



 类似资料:
  • 问题内容: 我尝试使用和提取MySQL查询结果,并且将数值作为字符串返回。 有什么方法可以将数据存储为表中的数据类型吗? 该应用程序将查询许多不同的查询,因此我将无法基于1乘1将值强制转换为预期的数据类型。 问题答案: 我不认为可以在PHP 5.2 中以其本机数据类型 (即字符串的其他任何形式) 获取数据… 如果我没记错的话,在PHP 5.3中,当您使用新的 (在PHP > = 5.3中是新的)

  • 我做了一个elasticsearch查询,以按县查找成员页面。 总体目标是获取查询返回的所有memberId,并将它们用作另一个查询的搜索条件。(实体“成员”有一个名为“memberId”的字段) 我尝试使用. getContent获取页面内容(以便从页面获取memberId字段)... 但是我不知道我到底在用. Collection做什么,它返回的不仅仅是memberId 下面是sysout中显

  • 问题内容: 我有这样的查询: 上述查询^中的结果数为10行。现在,我想知道如何在此查询中获取总结果数: 如何计算此^中所有结果的数量 (与无关)? 其实我想要这个数字: 现在,我想知道如何在没有其他查询的情况下获得总结果数。 问题答案: 添加一列,例如: 如 @Tim Biegeleisen所述 : 关键字在所有其他内容之后应用,因此仍然返回正确的答案。

  • 问题内容: 是否可以获取MySQL中sql查询结果的大小(以字节为单位)? 例如: 这将返回10000行。我不需要行,但结果集的大小以字节为单位。可能吗? 问题答案: 对,可能不准确,请注意

  • 获取查询对象的结果集 // 查询邮箱或密码是否正确 async checkEmailAndPassword(loginData) { // 解构查询对象中的结果 const { dataValues: {id,username,password,email} } = await this.ctx.model.User.findOne({

  • 问题内容: 是否有可能以某种方式获取MySQL数据库的结构,或者只是一些具有简单查询的表? 还是有另一种方法,我该怎么办? 问题答案: 我认为你所追求的是 您也可以使用 获取数据库中表的列表。