标签: datatable

检查列是否返回空值的最佳方法(从数据库到.net应用程序)

我有一个带有DateTime列的表,该列可以具有NULL值

现在我使用ODBC连接连接到数据库,并将值传入.net/c#中的DataTable.

我可以通过去检查它是否为NULL

if(String.IsNullOrEmpty(table.rows[0][0].ToString())
{
     //Whatever I want to do
}
Run Code Online (Sandbox Code Playgroud)

String.IsNullOrEmpty是检查空值的正确方法.

.net c# datatable null datetime

30
推荐指数
2
解决办法
12万
查看次数

如何删除DataTable中的多行?

如何在符合自定义条件的DataTable行的循环中删除特定的DataRows -lets表示索引为偶数的行?(不使用LINQ)

谢谢

.net c# datatable ado.net datarow

30
推荐指数
3
解决办法
7万
查看次数

将DataTable转换为CSV流

目前有一个DataTable,但希望通过WebHandler将其流式传输给用户.FileHelpersCommonEngine.DataTableToCsv(dt, "file.csv").但是它会将其保存到文件中.如何将其保存到流中呢?当我知道高级列或它们没有改变时,我知道如何做到这一点,但我想直接从数据表生成列标题.

如果我知道列,我只是创建类:

[DelimitedRecord(",")]
public class MailMergeFields
{
    [FieldQuoted()]
    public string FirstName;
    [FieldQuoted()]
    public string LastName;
}
Run Code Online (Sandbox Code Playgroud)

然后使用FileHelperEngine并添加记录:

FileHelperEngine engine = new FileHelperEngine(typeof(MailMergeFields));

MailMergeFields[] merge = new MailMergeFields[dt.Rows.Count + 1];

// add headers
merge[0] = new MailMergeFields();
merge[0].FirstName = "FirstName";
merge[0].LastName = "LastName";

int i = 1;              
// add records
foreach (DataRow dr in dt.Rows)
{
    merge[i] = new MailMergeFields();
    merge[i].FirstName = dr["Forename"];
    merge[i].LastName = dr["Surname"];
    i++;
}
Run Code Online (Sandbox Code Playgroud)

最后写入一个流:

TextWriter writer = new StringWriter();
engine.WriteStream(writer, merge); …
Run Code Online (Sandbox Code Playgroud)

c# csv datatable

29
推荐指数
2
解决办法
11万
查看次数

你如何在JQuery.DataTable中更改单元格的样式?

我有一个关于为数据单元格设置样式属性的问题jQuery.DataTable.dataTable使用以下代码初始化时,我能够为每列设置宽度:

oTable = $('#example').dataTable( {
    "aoColumns" : [ 
        { sWidth: '40%' }, 
        { sWidth: '60%' }
    ]
} );
Run Code Online (Sandbox Code Playgroud)

现在我想改变第二列的对齐方式,如下所示:style="text-align: right;".

我正在使用此代码动态添加行:

/* Global var for counter */
var giCount = 2;

function fnClickAddRow() {
    oTable.fnAddData( [
        'col_1', 
        'col_2' ] );

    giCount++;  
}
Run Code Online (Sandbox Code Playgroud)

你能告诉我如何在插入新行后选择新行的第二个单元格如何在插入之前/期间设置行的样式?

任何帮助将不胜感激!

datatable jquery-plugins jquery-selectors

29
推荐指数
4
解决办法
7万
查看次数

如何使用json.net将datatable转换为json字符串?

如何使用json.net将datatable转换为json?任何建议......我已经下载了必要的二进制文件...我应该使用哪个类来将我的数据表转换为json?迄今为止使用此方法通过传递我的数据表来获取json字符串...

public string GetJSONString(DataTable table)
    {
        StringBuilder headStrBuilder = new StringBuilder(table.Columns.Count * 5); //pre-allocate some space, default is 16 bytes
        for (int i = 0; i < table.Columns.Count; i++)
        {
            headStrBuilder.AppendFormat("\"{0}\" : \"{0}{1}¾\",", table.Columns[i].Caption, i);
        }
        headStrBuilder.Remove(headStrBuilder.Length - 1, 1); // trim away last ,

        StringBuilder sb = new StringBuilder(table.Rows.Count * 5); //pre-allocate some space
        sb.Append("{\"");
        sb.Append(table.TableName);
        sb.Append("\" : [");
        for (int i = 0; i < table.Rows.Count; i++)
        {
            string tempStr = headStrBuilder.ToString();
            sb.Append("{");
            for (int j = 0; …
Run Code Online (Sandbox Code Playgroud)

c# datatable json json.net

29
推荐指数
2
解决办法
7万
查看次数

marking existing column as primary key in datatable

I have a datatable from database on the basis of some query.

I want that datatable to have a primary key for an existing column.

How can I do this?

.net datatable

29
推荐指数
1
解决办法
4万
查看次数

WPF DataGrid RowHeader数据绑定

我有一个绑定到DataTable的DataGrid.我想在RowHeader中显示文本,以实现这样的事情:

         Col0      Col1      Col2      Col3
Table |    1    |    3    |    5    |    6    |
Chair |    3    |    2    |    1    |    8    |
Run Code Online (Sandbox Code Playgroud)

这是可能的,如果是这样,我该怎么做?

data-binding wpf datatable datagrid row

29
推荐指数
3
解决办法
2万
查看次数

查询数据表的条件

我有一个有两列的数据表,

Column 1 = "EmpID"
Column 2 = "EmpName"
Run Code Online (Sandbox Code Playgroud)

我想查询数据表,对列EmpIDEmpname.

例如,我想获取值在哪里

(EmpName != 'abc' or EmpName != 'xyz') and (EmpID = 5)
Run Code Online (Sandbox Code Playgroud)

c# linq datatable

29
推荐指数
3
解决办法
10万
查看次数

为什么我不能做foreach(DataTable.Rows中的var Item)?

我有什么理由不能做到以下几点:

foreach (var Item in DataTable.Rows) {
Run Code Online (Sandbox Code Playgroud)

而不是必须这样做

foreach (DataRow Item in DataTable.Rows) {
Run Code Online (Sandbox Code Playgroud)

我原以为这是可能的,就像在其他数据类型上一样.例如:

foreach (var Employee in Staff) { // string[] Staff etc...
Run Code Online (Sandbox Code Playgroud)

当我尝试第一个foreach循环时,我得到错误CS0021:无法将带有[]的索引应用于'object'类型的表达式.

为什么编译器不能确定.Rows返回DataRows的集合?

.net c# datatable foreach datarow

28
推荐指数
2
解决办法
1万
查看次数

如何将DataTable.Select()结果传递给新的DataTable?

我有一个数据DataTable命名dt2.我正在调用它的Select方法来获取一些特定的行.

DataRow[] foundRows;

expression = "parent_id=1";

foundRows = dt2.Select(expression);
Run Code Online (Sandbox Code Playgroud)

如何将Select-method结果传递给新的DataTable- 比如说FilteredData

.net c# datatable

27
推荐指数
3
解决办法
8万
查看次数