关键词:
C#将LINQ数据集转换为Datatable
1.方法一:(测试可用)
//通过一个公共类将LINQ数据集转换为datatable
public DataTable LINQToDataTable<T>(IEnumerable<T> varlist)
{
DataTable dtReturn = new DataTable();
// column names
PropertyInfo[] oProps = null;
if (varlist == null) return dtReturn;
foreach (T rec in varlist)
{
// Use reflection to get property names, to create table, Only first time, others
will follow
if (oProps == null)
{
oProps = ((Type)rec.GetType()).GetProperties();
foreach (PropertyInfo pi in oProps)
{
Type colType = pi.PropertyType;
if ((colType.IsGenericType) && (colType.GetGenericTypeDefinition()
==typeof(Nullable<>)))
{
colType = colType.GetGenericArguments()[0];
}
dtReturn.Columns.Add(new DataColumn(pi.Name, colType));
}
}
DataRow dr = dtReturn.NewRow();
foreach (PropertyInfo pi in oProps)
{
dr[pi.Name] = pi.GetValue(rec, null) == null ?DBNull.Value :pi.GetValue
(rec,null);
}
dtReturn.Rows.Add(dr);
}
return dtReturn;
}
调用:
var vrCountry = from country in objEmpDataContext.CountryMaster
select new {country.CountryID,country.CountryName};
DataTable dt = LINQToDataTable(vrCountry);
2.方法二:(未测试)
public DataTable ToDataTable(System.Data.Linq.DataContext ctx, object query)
{
if (query == null)
{
throw new ArgumentNullException("query");
}
IDbCommand cmd = ctx.GetCommand(query as IQueryable);
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = (SqlCommand)cmd;
DataTable dt = new DataTable("sd");
try
{
cmd.Connection.Open();
adapter.FillSchema(dt, SchemaType.Source);
adapter.Fill(dt);
}
finally
{
cmd.Connection.Close();
}
return dt;
}
调用:
var vrCountry = from country in objEmpDataContext.CountryMaster
select new {country.CountryID,country.CountryName};
DataTable dt = LINQToDataTable(objEmpDataContext,vrCountry);
原文地址:http://www.c-sharpcorner.com/uploadfile/VIMAL.LAKHERA/convert-a-linq-query-resultset-to-a-datatable/
本文出自 “世界都一样” 博客,请务必保留此出处http://970076933.blog.51cto.com/9767314/1941691
将 DataTable 转换为字典 C#
】将DataTable转换为字典C#【英文标题】:TransformaDataTableintoDictionaryC#【发布时间】:2013-11-1120:08:14【问题描述】:我想知道如何将DataTable转换为Dictionary。我做了这样的事情。usingSystem.Linq;internalDictionary<string,object>GetDict(DataTable... 查看详情
如何将datagridview转换为datatable?
...ridView是转换不了DataTable的,因为DataGridView是控件,DataTable是数据结构,但是DataGridView的数据集是有可能的,前提是DataGridView绑定数据集的时候绑定的就是DataTable类型的数据集.DataTabledt=DataGridView.DataSourseasDataTable;参考技术As529586的正解 查看详情
C# - 将 DataReader 转换为 DataTable
...15:24:30【问题描述】:我想将DataReader转换为DataTable以显示数据库中的列表(demoClients)中的所有客户。目前我有这个:usingSystem;usingSystem.Collections.Generic;usingSystem.Li 查看详情
将 Datatables POST 数组转换为 C# 模型
...3:09【问题描述】:我正在使用datatables.net结构向aspmvc发送数据,如下所示draw:1columns[0][data]:first_namecolumns[0][name]:columns[0][searchable]:truecolumns 查看详情
将数据集/数据表转换为 CSV
】将数据集/数据表转换为CSV【英文标题】:ConvertingDataSet/DataTabletoCSV【发布时间】:2011-06-2012:57:09【问题描述】:如果有任何方法可以从DataTable或DataSet生成CSV文件,请告诉我?具体而言,无需手动遍历DataTable行并进行连接。请... 查看详情
将 SQL 语句转换为 DataTable 上的 LINQ 查询
】将SQL语句转换为DataTable上的LINQ查询【英文标题】:convertingaSQLstatementtoLINQqueryonaDataTable【发布时间】:2011-02-0703:00:08【问题描述】:我正在研究LinqtoDataTable,Lambda。因为很难想把sql改成linq,Lambda是不行的。SQL代码下方是删除电... 查看详情
如何计算 LINQ 中 DataTable 的列的总和(到数据集)?
】如何计算LINQ中DataTable的列的总和(到数据集)?【英文标题】:HowtocalculatesumofaDataTable\'sColumninLINQ(toDataset)?【发布时间】:2009-02-1502:24:27【问题描述】:我刚刚开始阅读LINQ,我想开始将它整合到我的代码中。我知道如何通过... 查看详情
使用 Linq C# 为 DataTable 的每条记录创建 XML 文件
...7-02-1507:05:31【问题描述】:目前我正在从单个XML文件中的数据表中的所有记录创建XML文件,我想使用linq分别为每个记录创建XML文件。DataTabledtTest=newDataTable();dtTest.Column 查看详情
从 C# 中的存储过程返回多个记录集
...录集作为单独的DataTables返回,这样我就可以遍历所有的数据表,当我到达它的末尾时跳到下一个DataTable,而不 查看详情
将 linq 查询转换为字符串数组 - C#
】将linq查询转换为字符串数组-C#【英文标题】:Convertlinqquerytostringarray-C#【发布时间】:2010-11-2514:44:53【问题描述】:将单列linq查询转换为字符串数组的最有效方法是什么?privatestring[]WordList()DataContextdb=newDataContext();varlist=fromxin... 查看详情
LINQ 是这种情况下的最佳解决方案吗? LINQ 到数据集
】LINQ是这种情况下的最佳解决方案吗?LINQ到数据集【英文标题】:IsLINQthebestsolutioninthisscenario?LINQtoDataset【发布时间】:2011-05-2922:38:48【问题描述】:LINQ是使用.NET实现数据到对象自动映射的最佳解决方案吗?谁能给我一些其他... 查看详情
在 C# 中将数据表转换为 JSON
】在C#中将数据表转换为JSON【英文标题】:ConvertdatatabletoJSONinC#【发布时间】:2013-06-2804:38:25【问题描述】:我想从数据库中获取记录到DataTable。然后将DataTable转换为JSON对象。将JSON对象返回给我的JavaScript函数。我通过调用使用t... 查看详情
将 sql 转换为 LINQ C#
】将sql转换为LINQC#【英文标题】:ConvertingsqltoLINQC#【发布时间】:2020-04-2405:53:45【问题描述】:我正在使用LLBLGENPro运行时框架并获取表的实体。是否可以将此查询转换为LINQ表达式?SELECTs1.SETTING_NAME,s1.SETTING_VALUE,s1.ROW_LST_UPD_TS,s1.M... 查看详情
将 Oracle SQL 转换为 LLBLGEN LINQ 表达式 C#
...】:2020-04-2718:31:13【问题描述】:我有一个包含1个表的数据库:APP_ID|SETTING_NAME|SETTING_VALUE|ROW_LST_UPD_TS1|ab1|111|17:321|ab2|112|17:32--------------- 查看详情
我们可以将位置 SQL 转换为 C# LINQ 吗?
】我们可以将位置SQL转换为C#LINQ吗?【英文标题】:CanweConvertlocationSQLtoC#LINQ?【发布时间】:2021-08-2603:01:27【问题描述】:这是一个返回30英里半径内的用户列表的SQL语句SELECTid,(3959*acos(cos(radians(78.3232))*cos(radians(lat))*cos(radians(lng)-... 查看详情
把linq查询返回的var类型的数据转换为datatable
...应的所有用户,需要两表连接查询,虽然返回的只有用户数据,但是我想到若是返回的不只是用户数据,而还要加上角色信息,那么我返回什么类型呢,返回var吗,这样不行。于是我网上找找是否能返回DataTable呢,这样我不用创... 查看详情
C# 将带有 Case 语句的 SQL 查询转换为 LINQ
】C#将带有Case语句的SQL查询转换为LINQ【英文标题】:C#ConvertSQLquerywithCasestatementtoLINQ【发布时间】:2021-07-1717:34:02【问题描述】:我在其中一个表中添加了一个新列,该列的结果取决于其他2个列的结果。我进行了更新,以便可以... 查看详情
c#将datatable数据源转换成实体类
1usingSystem;2usingSystem.Collections.Generic;3usingSystem.Data;4usingSystem.Reflection;56///<summary>7///将DataTable数据源转换成实体类8///</summary>9///<typeparamname="T">实体</typeparam> 查看详情