小编eri*_*vet的帖子

C#:使用PrimaryKey从DataTable中检索值

我的C#代码存在问题.我已经设置了几个DataTables,并为每个DataTable分配了一个主键.我想要做的是从单个列中检索单行.

让我说我有这个代码:

DataColumn Pcolumn = new DataColumn();
DataColumn[] key = new DataColumn[1];

Pcolumn.DataType = System.Type.GetType("System.Double");

Pcolumn.ColumnName = "length";
key[0] = Pcolumn;


table6F.Columns.Add(Pcolumn);
table6F.Columns.Add("Area", typeof(double));
table6F.Columns.Add("load", typeof(double));
table6F.Columns.Add("weigth", typeof(double));

table6F.PrimaryKey = key;
table.Rows.Add(6.0, 14.0, 17.8 , 11.0 );
table.Rows.Add(7.0, 16.2 , 20.7 , 16.0 );
Run Code Online (Sandbox Code Playgroud)

我想检索第二行(20.7)的"加载",我想在表中搜索7.0,主键列.我虚拟测试这样做,只是为了测试:

Object oV;
double load;

//Get an Table object given the specific row number, this dummy i always set to 0.
// Given Column
oV = table.Rows[0]["load"];
load = Convert.ToDouble(oV.ToString());
Run Code Online (Sandbox Code Playgroud)

是否有类似的方法使用主键提取?

c# datatable ado.net primary-key

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

自动展开响应数据表的子行

我有一个响应式dataTable(响应式文档),格式如下:

var dataTableInfo = j$('[id$="dataTableInfo"]').DataTable({
                 responsive: {
                    "autoWidth": true,
                    details: {
                        type: 'column',
                        target: 0
                    }
                },
                columnDefs: [ {
                    className: 'control',
                    orderable: false,
                    targets:   0
                } ]
            });
Run Code Online (Sandbox Code Playgroud)

我通过搜索到外部数据源来填充数据,然后在DataTable中有第二个表,其中包含从我的实例中自动生成的附加数据(在子行中).我可以单击第一列中的图标来展开并显示子行,一切正常.

我想要完成的是,一旦加载了所有数据,我就会通过此DataTable的Javascript自动扩展子行(我知道这是在回调函数中发生的).

我尝试了以下多种变体:

function ExpandTable(){
        var tab = j$('[id$="dataTableInfo"]').DataTable();
        alert(tab);

        tab.rows().every( function () {

            this.child.show();

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

但我的表格根本不会扩展其子行.控制台中没有任何反应并且没有错误消息.

任何人都可以帮我解释我如何根据这个模拟按钮点击:

$('#example tbody').on( 'click', 'tr', function () {
var child = table.row( this ).child;

if ( child.isShown() ) {
    child.hide();
}
else {
    child.show();
}} );
Run Code Online (Sandbox Code Playgroud)

或以任何其他方式自动扩展子行.

再见!

javascript jquery datatables datatables-1.10

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