LINQ to DataTable 简单快速

2024-03-09

我是 LINQ 新手,我想将 LINQ 查询转换为 DataTable

    DataClassesDataContext db = new DataClassesDataContext(MyConncectionString);
    IEnumerable<DataRow> qry = (IEnumerable<DataRow>)(from tbl in db.Table1.AsEnumerable()
                                                     select tbl);
    DataTable dt=new DataTable();
    qry.CopyToDataTable(dt, LoadOption.OverwriteChanges);
    GridView1.DataSource = dt;

但我得到了错误

Unable to cast object of type 'WhereSelectEnumerableIterator to type 'System.Collections.Generic.IEnumerable`1[System.Data.DataRow]'.

谁能帮我一下吗


这些是基本概念:

.Net 框架附带了多个 LINQ 提供程序

  • LINQ 到对象。系统.Linq。它是 LINQ 核心,旨在与内存中集合一起使用

  • LINQ 到 XML。 System.Xml.Linq 处理 XML 文档

  • LINQ 到数据集。使用 DataTable 和 DataSet 对象

  • LINQ 到 SQL。 System.Data.Linq 用于处理 SQL Server 数据库

  • LINQ 到实体。 (实体框架)用于处理多个数据库。提供了更丰富的API

我认为你想做的是:

从 LINQ to SQL 上下文返回的查询中,您希望返回以下内容的集合:DataRow对象。

LINQ to SQL 对象和 DataRow 之间没有简单的转换,因此如果您坚持使用反射来获取所需的输出, 使用 DataContext 从 LINQ 查询填充 DataTable 的最快方法 https://stackoverflow.com/q/4953209/1268570

现在,如果您确实想使用 DataTable 对象,那么我的建议是使用强类型 DataSet。要创建一个,只需将一个新的 DataSet 对象添加到您的项目中,然后从服务器资源管理器中拖动表,就像处理 LINQ to SQL 对象一样

如果可能的话,评估使用的决定DataRow而是返回 LINQ To SQL 生成的对象,或者更好地创建自定义 DTO 对象

关于您的代码,我看不出有任何理由尝试使用Datatable对象(除非您不发布额外的代码来证明此决定的合理性)。如果您只想设置DataSource控件的属性,只需执行以下操作:

var q = from tbl in db.Table1
        select tbl;

this.myControl.DataSource = q;
this.myControl.DataBind();

如果需要,您可以将结果转换为匿名对象并将其用作DataSource:

var q = from tbl in db.Table1
        select new
        {
           MyNewProperty = tbl.ExistingProperty,
           AnotherProperty = tbl.MyCoolerProperty
        };

this.myControl.DataSource = q;
this.myControl.DataBind();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LINQ to DataTable 简单快速 的相关文章

  • 如何格式化 Microsoft JSON 日期?

    我正在第一次尝试Ajax http en wikipedia org wiki Ajax 28programming 29使用 jQuery 我正在将数据传输到页面上 但在处理为日期数据类型返回的 JSON 数据时遇到了一些问题 基本上 我
  • 如果我将 ValidateRequest 设置为 false 不是很危险吗?

    我在我的 asp net 项目的一些 Web 表单中使用 FreeTextBox HTML 编辑器 如果我不将 ValidateRequest 属性设置为 false 我会收到此错误 从客户端检测到潜在危险的 Request Form 值
  • Distinct 不适用于 LINQ to Objects [重复]

    这个问题在这里已经有答案了 class Program static void Main string args List
  • 替换 ASP.NET Web 表单中的 MSWord 智能引号

    我遇到一个问题 用户在 MS Word 中编写一些大块文本 然后将其粘贴到在线表单中 这些以颠倒的形式输入数据库 我可以选择哪些选项来将这些内容替换为标准报价 这些智能引号是一个 unicode 点 您所需要的只是一个简单的 String
  • 在字符串列表中查找子字符串

    我有一个像这样的列表 我希望能够在此列表中搜索来自另一个字符串的子字符串 例子 List
  • 如何在 ASP.NET 中的 gridview 中为每个标题列添加标题

    我正在使用 ASP NET 我有一个 gridview 我需要在每个标题列中放置一个标题 标题将显示在移动 我必须将字段转换为 TemplateField 像这样的东西
  • 将 Linq 表达式转换为 SQL Server 查询

    我正在使用一些 crm 框架 该框架没有任何内部 orm 并且不使用实体框架 仅使用纯 sql 查询 我在数据库中的每个表都有实体 所以我有例如 public class Customer public string FirstName g
  • .NET 4.0 中的 MembershipProvider

    如何将 MembershipProvider 类添加到 VS 2010 B2 中的 NET 4 0 项目中 我想自定义一个 MembershipProvider 但是如果不添加这个类我就不能 请指导我完成这个过程 有趣的 然而 构建错误是你
  • 将字节转换为图像 ASP.NET c# 并在 Image1.Url 中使用它

    我有一个 WEB APP 它是一个网络摄像头应用程序 它拍摄图像并以字节形式存储到数据库中 话虽这么说 我也不想保存拍摄的图像并将其保存在任何类型的文件夹中现在 显示捕获的图像以供我保存并再次查看的唯一方法是 我有一个在单击捕获图像时触发的
  • data.table() 仍然将字符串转换为因子吗?

    据我所见我假设 data table v1 8 0 不会自动将字符串转换为因子 具体来说 引用该页面中的 Matthew Dowle 的话 不需要 stringsAsFactors 在 v1 8 0 中这样做 现在键中允许使用 o 字符列
  • 递归分层父子

    我有一个来自数据库的项目集合 该数据库具有parentid值或空 这是我的班级设计 public class Item public int id get set public string Name get set public int
  • 使用 Linq 左连接两个列表并从右侧维护一个属性

    我有 2 个列表同类型 左侧列表 var leftList new List
  • Firefox 和 IE:从缓存检索数据时损坏数据

    我向服务器发出一个请求 如下所示 http localhost Combine aspx flag file1 js file2 js file3 js 我也尝试过这个 http localhost Combine aspx flag va
  • 在 SelectList 集合中设置所选项目

    我有一堂具有以下属性的课程 它构建了一个SelectList现有列表中的对象 然后设置所选项目 public SelectList ProviderTypeList get SelectList list new SelectList my
  • 检查域名是否可供购买 - C# [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有什么方法可以检查某个域名是否可以购买 是否有任何图书馆可以做到这一点 THanks 您可以看一下 ht
  • 阻止跨域调用 asp.net .asmx Web 服务

    我构建了一个应用程序 它使用 jQuery 和 JSON 来使用 ASP NET asmx Web 服务来执行增删改查操作 应用程序和 asmx 位于同一域中 我不介意人们远程消耗 asmx 的读取操作 但不希望人们随机删除内容 我可以将我
  • 在 JavaScript 中获取当前会话值?

    我有一个场景 我在浏览器中打开 Web 应用程序 但在两个单独的选项卡中 在一个选项卡中 我从应用程序注销 因此所有会话值都变为空 在另一个选项卡中 我单击了网络应用程序中的锚标记 在锚标记的 jquery on click 事件中 我检查
  • 当我尝试在 VS 中添加文件时加载类型库/DLL 时出错(HRESULT:0x80029C4A)

    当我尝试在 Web 项目中创建视图时遇到问题 这是我的错误消息 There was an error running the selected code generator Error loading type library DLL Ex
  • EntityType“MyProfile”没有定义键。定义此 EntityType 的键

    我不确定为什么会收到此错误消息 我在 sql 数据库中为其定义了一个主键 这是我的代码 HttpPost public ActionResult Register RegisterModel model if ModelState IsVa
  • 在哪里存储加密密钥 MVC 应用程序

    我正在使用 AES 加密 解密类 该类需要密钥值和向量值来加密和解密 MVC3 应用程序中的数据 保存记录时 我对数据进行加密 然后存储在数据库中 当我检索记录时 我在控制器中解密并将未加密的值传递给视图 我们关心的不是在数据通过网络时保护

随机推荐

  • 使用接口编写 DAO 类

    我正在创建一个新的 Web 应用程序 它将使用一堆数据访问对象 DAO 类对数据进行 CRUD 操作 我知道当我有外部用户 应用程序使用我的 DAO 类时我应该编写 java 接口 但如果没有这样的需要 你认为我还应该写接口吗 我将使用 s
  • PHPExcel 所需日期 dd/MM/yy

    我正在使用 PHPExcel Lib 下载 Excel 工作表 并且在下载的 Excel 工作表中需要列日期格式 如 25 May 17 而不是 25 05 17 我能够添加数字格式 25 05 17 但不像 25 May 17 下面是我的
  • 如何将 php 中的数字 1,000 格式化为 1k

    我正在尝试格式化 php 中数字的输出 我显示了一定数量的帖子 每个用户旁边是帖子总数 但它显示了实际数量 我希望它以更短的格式显示 实际上 就像他们在 SO 享有盛誉的那样 有任何想法吗
  • 为什么 QXmlQuery 似乎在结果中添加了“\n”? (以及如何解决?)

    编写一些代码来从 XML 中提取一些值 XPath 的结果似乎添加 n内容之后 include
  • jquery 验证中 min="0" 是否存在错误?或者我忽略了什么?

    jQuery 验证似乎可以很好地工作min 1 and min 1 但不与min 0 考虑一下这个jsFiddle http jsfiddle net Bridgeland RAJZX 2 它适当地反对 第一个值 5input元素和第三个元
  • 我该如何处理“from”必须长度为1的错误?

    我尝试计算特定日期之间的天数 我有 2 列包含所有字符向量 start date lt c 2015 01 10 2015 01 11 2015 02 24 end date lt c 2015 03 10 2015 04 01 2015
  • Docker 容器中的 MySQL 绑定地址

    我想构建一个容器 它可以绑定到多个IP地址 绑定地址存储在my cnf 没关系 如何定义它或者使用 a 注释掉Dockerfile授予远程访问权限 sed https www gnu org software sed 通常是执行此类任务的首
  • 无法在 iOS 8 中将搜索栏色调更改为透明

    从 Xcode 5 升级到 6 现在我的搜索栏色调为黑色 尝试通过故事板右侧窗格 gt 条形色调 将其更改为清晰的颜色 但它仍然是黑色 还以编程方式尝试 self searchBar setTintColor UIColor clearCo
  • Excel:如果单元格 1 包含 X、Y 或 Z,则单元格 2 应等于 W

    从标题来看 我需要 Excel 根据相应的 A 行单元格内容自动填充 B 行单元格 所以如果细胞A1包含 X 或 Y 或 Z 则单元格B1应等于 W 或者如果A1包含 G 或 H 或 J 细胞B1应等于 W 您可以尝试将以下公式添加到 B1
  • PHP Laravel:无法建立连接,因为目标机器主动拒绝它

    我正在 Laravel 5 中构建一个 Web 应用程序 该应用程序应该获取存储在 MySQL 数据库中的 类别名称 并显示一个表单以添加新的 类别名称 当我执行命令时php artisan serve我导航到http localhost
  • 位置:子元素上的粘性行为,而父元素不粘性?

    我正在努力实现一些我不确定是否可能实现的目标 请注意 我正在寻找仅 CSS 的解决方案 我知道我可以用 JS 解决这个问题 但我不想这样做 考虑下面的笔 https codepen io fchristant pen PjoKOq http
  • 使用 Alter 命令的 Oracle 存储过程

    我正在尝试构建一个 Oracle 存储过程 它将接受表名作为参数 然后该过程将重建表上的所有索引 我的问题是在存储过程中使用 ALTER 命令时出现错误 就好像 PLSQL 不允许该命令一样 Use the execute immediat
  • 如何使用 Ant、文件和文件夹“chmod -R +w”?

    我想做相当于chmod R w foo in an Ant构建脚本 到目前为止我正在使用这个
  • 如何解决 Tridion 弹出页面中的“Tridion 未定义”错误?

    我正在自定义功能区工具栏并向其添加一个按钮 每当我单击该按钮时 它都会打开一个 aspx 页面 允许作者选择一些数据 这些数据将附加到现有的 RTF 字段内容中 但是当打开弹出窗口时 浏览器 Internet Explorer 中出现以下错
  • 使用队列进行基数排序

    我想创建一个基数排序 http en wikipedia org wiki Radix sort使用队列实现 我无法弄清楚我的代码的哪一部分有问题或者我应该阅读哪些资源 我的代码可能完全错误 但这是我的实现 没有任何帮助 我还没有参加数据结
  • 不带重定向的不记名令牌 WEB API asp.net core

    我是 ASP NET Core 的新手 我正在尝试使用来自 Google Facebook 的 jwt 身份验证和 OpenOauth 制作一个小型 Web 服务 我读过这篇文章 https stormpath com blog token
  • System.Windows.Threading.DispatcherTimer 在哪里?

    快到长周末了 我正在尝试创建一个 DispatcherTimer 我找到了一些示例代码 但由于缺少命名空间而无法运行它 我有命名空间 System Windows Threading 但我可以在哪个程序集中找到它 我尝试了 System S
  • Pandas GroupBy 中的计数和连接整数

    假设这是我的 df A B C 0 a 33 13 1 b 44 14 2 a 55 15 3 a 66 16 4 b 77 17 5 c 88 18 我尝试得到这样的东西 A B B C count list sum 0 a 3 33 5
  • 如果类列表包含多个特定类

    我需要一个函数来触发元素recordplayerstick包含pinplace or pinsongplay班级 我当前的代码返回语法错误 这样做的正确方法是什么 if document getElementById recordplaye
  • LINQ to DataTable 简单快速

    我是 LINQ 新手 我想将 LINQ 查询转换为 DataTable DataClassesDataContext db new DataClassesDataContext MyConncectionString IEnumerable