简体   繁体   English

如何将C#数据表绑定到JQUERY数据表?

[英]How to bind C# DataTable to JQUERY DataTable?

I want to bind DataTable get from Excel Sheet to a Jquery Datatable. 我想将Data Sheet从Excel Sheet绑定到Jquery Datatable。 And my aim is to bind all the columns for the Datatable as dynamically. 我的目标是动态绑定数据表的所有列。 I have no idea how to bind the columns dynamically. 我不知道如何动态绑定列。

C# and Jquery is the code base C#和Jquery是代码库

In this code, I get the data from the excel sheet as a Datatable 在这段代码中,我从Excel工作表中获取数据作为数据表

region DataValidation 区域DataValidation

    public DataTable DataValidation(string dataExchangeSelectedColum, string entityvalue,string filename)
    {
        UA patsUA = Session["PaTSUA"] as UA;
        //List<DataExchangeDefinitionViewModel> dataExchangeDefinitionListVM = _mapper.MapToDataExchangeDefinitionViewModelList(_dataExchangeBusiness.ValidateDataType(dataExchangeSelectedColum, entityvalue, filename, patsUA.DBConnectionString));
        DataTable dataTable = _dataExchangeBusiness.DataValidation(dataExchangeSelectedColum, entityvalue, filename, patsUA.DBConnectionString);
        return dataTable;
    }
    #endregion DataValidation

I want to bind the above DataTable into jquery Datatable. 我想将上面的DataTable绑定到jquery Datatable中。 The above Datatable may vary that is the columns vary in different situations. 上面的数据表可能会有所不同,因为列在不同情况下会有所不同。 so columns must bind dynamically. 因此列必须动态绑定。

A small change in my controller and create a partial view and load that partial view into a div 在我的控制器中做一个小改动,创建一个局部视图并将该局部视图加载到div中

Here is the code 这是代码

Controller 控制者

#region DataValidation

    public ActionResult DataValidation(string dataExchangeSelectedColum, string entityvalue,string filename)
    {
        UA patsUA = Session["PaTSUA"] as UA;
        DataTable dataTable = null;
         dataTable = _dataExchangeBusiness.DataValidation(dataExchangeSelectedColum, entityvalue, filename, patsUA.DBConnectionString);


        return PartialView("_ExcelDataTable", dataTable);
    }
    #endregion DataValidation

Created a partial view. 创建了局部视图。 Here it comes to play 在这里玩

@model System.Data.DataTable
@using System.Data;
@{
    IEnumerable<DataRow> _excelDataRowList = from dataRow in Model.AsEnumerable() select dataRow;
}
<div class="table-responsive tableScroll">
    <table id="data-table-basic" class="table table-striped">
        <thead>
            @foreach (DataColumn col in Model.Columns)
            {
                <tr>
                    @col.Caption.ToString()
                </tr>
            }
        </thead>
        <tbody>
            @foreach (DataColumn dtCol in Model.Columns)
            {
                <tr>
                    @foreach (DataRow row in _excelDataRowList)
                    {
                        <td>
                            @row[dtCol]
                        </td>
                    }

                </tr>
            }
        </tbody>
    </table>
</div>

I load this partial view into a div where I wanted to display the table 我将此局部视图加载到要显示表的div中

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM