标签: datatable

数据集与数据集

我目前使用DataTable从数据库中获取结果,我可以在我的代码中使用它.

但是,Web上的许多示例都使用DataSet代替并通过collections方法访问表.

使用DataSet或DataTables作为SQL结果的存储方法是否有任何优势,性能明智或其他方面?

c# datatable dataset

123
推荐指数
4
解决办法
11万
查看次数

DataTable:隐藏"显示条目"下拉列表,但保留"搜索"框

是否可以隐藏"显示条目"下拉列表,但将"搜索"框保留在DataTable中?我想在底部始终显示10行分页和搜索框,但不想显示"显示条目"下拉列表.

datatable dt

114
推荐指数
10
解决办法
20万
查看次数

如何更改DataTable列名?

我有一个DataTable有四列,如

 StudentID        CourseID          SubjectCode            Marks    
------------     ----------        -------------          --------
    1               100              MT400                  80
    2               100              MT400                  79
    3               100              MT400                  88
Run Code Online (Sandbox Code Playgroud)

这里我通过将此数据表作为XML表传递,将此Datatable插入到Sql server表中.

我只想将DataTable列名称"Marks"更改为"SubjectMarks",并将此DataTable作为XML表传递.

我知道如何将DataTable作为XML表传递.但我不知道,如何将DataTable列名"Marks"更改为"SubjectMarks".

c# asp.net datatable ado.net

113
推荐指数
4
解决办法
20万
查看次数

如何更改DataTable中DataColumn的DataType?

我有:

DataTable Table = new DataTable;
SqlConnection = new System.Data.SqlClient.SqlConnection("Data Source=" + ServerName + ";Initial Catalog=" + DatabaseName + ";Integrated Security=SSPI; Connect Timeout=120");

SqlDataAdapter adapter = new SqlDataAdapter("Select * from " + TableName, Connection);
adapter.FillSchema(Table, SchemaType.Source);
adapter.Fill(Table);

DataColumn column = DataTable.Columns[0];
Run Code Online (Sandbox Code Playgroud)

我想做的是:

假设当前column.DataType.Name"Double".我希望它成为"Int32".

我该如何实现这一目标?

c# datatable types datacolumn

112
推荐指数
9
解决办法
29万
查看次数

ADO.NET DataRow - 检查列是否存在

如何检查数据行中是否存在列?

我正在构建数据表来组织一些我已经从数据库中撤回的数据.根据每行中的数据类型,我需要创建一个具有不同列的数据表.然后,稍后,我想检查并查看我正在查看的数据表是否有某个列.

我知道我可以捕获异常并以这种方式处理它,但我很好奇datarow对象上是否有属性或方法可以为我执行此操作?

这是我如何通过捕获异常来做到这一点:

public static String CheckEmptyDataRowItem(DataRow row, String rowName, String nullValue)
{
    try
    {
        return row[rowName].ToString();
    }
    catch (System.ArgumentException)
    {
        return nullValue;
    }
}
Run Code Online (Sandbox Code Playgroud)

datatable ado.net datarow

108
推荐指数
2
解决办法
4万
查看次数

C#复制或克隆DataRow的简单方法?

我正在寻找一种简单的方法来克隆DataRow.有点像拍摄该行的快照并保存它.然后原始Row的值可以自由更改,但我们仍然有另一个保存的副本不会更改.这是正确的方法吗?

    DataRow Source, Destination;
    //Assume we create some columns and fill them with values
    Destination.ItemArray = Source.ItemArray;
Run Code Online (Sandbox Code Playgroud)

这只是将Snapshot的ItemArray引用设置为指向Source中的那个或者它实际上是否单独创建一个副本?我应该这样做吗?

    Destination.ItemArray = Source.ItemArray.Clone();
Run Code Online (Sandbox Code Playgroud)

编辑:我不认为第二个代码片段实际编译.

c# datatable datarow

105
推荐指数
2
解决办法
18万
查看次数

c#datatable在第0位插入列

有没有人知道在位置0的数据表中插入列的最佳方法?

c# datatable position insert

101
推荐指数
2
解决办法
9万
查看次数

如何将DataTable导出到Excel

如何DataTable在C#中导出到Excel?我正在使用Windows窗体.它DataTableDataGridView控件相关联.我必须将记录导出DataTable到Excel.

.net c# datatable

98
推荐指数
8
解决办法
43万
查看次数

如何将选定的行传递给dataTable中的commandLink或ui:repeat?

我在JSF 2应用程序中使用Primefaces.我有一个<p:dataTable>,而不是选择行,我希望用户能够直接对各行执行各种操作.为此,我<p:commandLink>在最后一栏中有几个.

我的问题:如何将行ID传递给命令链接启动的操作,以便我知道要对哪一行进行操作?我尝试使用<f:attribute>:

<p:dataTable value="#{bean.items}" var="item">
    ...
    <p:column>
        <p:commandLink actionListener="#{bean.insert}" value="insert">
            <f:attribute name="id" value="#{item.id}" />
        </p:commandLink>
    </p:column>
</p:dataTable>
Run Code Online (Sandbox Code Playgroud)

但它总是产生0 - 显然在f呈现属性时行变量不可用(当我使用固定值时它可以工作).

有人有替代解决方案吗?

datatable jsf parameter-passing commandlink jsf-2

97
推荐指数
3
解决办法
17万
查看次数

使用(LINQ/Predicate)将DataTable的所有列名称转换为字符串数组

我知道我们可以通过一个简单的循环轻松地做到这一点,但我想说服这个LINQ/Predicate?

string[] columnNames = dt.Columns.?

or

string[] columnNames = from DataColumn dc in dt.Columns select dc.name;
Run Code Online (Sandbox Code Playgroud)

.net c# linq datatable

96
推荐指数
3
解决办法
20万
查看次数