使用DataTable需要注意

   今天在调试程序的时候,发现将DataTable加到DataSet引起的错误,可能有的人会说这不是很简单吗!做VB.net开发的基本上都会用到,而且也没出什么异常呀!不过就是将一个DataSet中的DataTable直接追加到另一个DataSet中出现Bug了,
请看下面代码:
 Business层代码
   Public   Shared   Function GetCSVInfo() Function GetCSVInfo(ByVal p_strOrderRequestNo As StringAs DataSet
            
Dim l_dstOrderCSV As New DataSet
            
Dim l_objHeaderDataAccess As New VendorOrderRequest_Access
            
Dim l_objDetailDataAccess As New VendorOrderRequestDetail_Access

            l_dstOrderCSV.Tables.Add(l_objHeaderDataAccess.GetOrderCSVHeaderInfo(p_strOrderRequestNo))
            l_dstOrderCSV.Tables.Add(l_objDetailDataAccess.GetOrderCSVDetailInfo(p_strOrderRequestNo))

            
Return l_dstOrderCSV
        
End Function

Access层代码:
   Public   Function GetOrderCSVHeaderInfo() Function GetOrderCSVHeaderInfo(ByVal p_strOrdertRequestNo As StringAs DataTable
            
Dim l_objDataSet As New DataSet
                       
'执行存储过程代码
                        l_objDataAdapter.Fill(l_objDataSet, "CSVHeaderInfo")

                        
Return l_objDataSet.Tables(0)
                    
        
End Function
其实上面的代码是有问题的:将一个DataSet中的DataTable直接追加到另一个DataSet中是不允许的,因为追加时是Table的地址传递,那么两个DataSet同用一个DataTable,DataSet中是不允许这样的操作。
解决方法:
1、DataSet中的Table Copy一份追加到另一个DataSet中
 DataSet1.Tables.add(DataSet2.Tables(0).Copy)
2、Table单独存在,不要放到DataSet中
 DataSet1.Tables.add(Table1)

Keyword:datatable,dataset,dataset.tables,dataset.add,datatable.copy,

转载于:https://www.cnblogs.com/Qizai/archive/2007/10/26/939243.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用 Bootstrap 插件 DataTable,首先需要在 HTML 文件中引入相关的 CSS 和 JS 文件。可以在 Bootstrap 的官网上下载最新版的 DataTable,也可以通过 CDN 引入。 ```html <!-- 引入 DataTable 的 CSS 文件 --> <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.24/css/dataTables.bootstrap4.min.css"> <!-- 引入 jQuery 和 DataTable 的 JS 文件 --> <script src="https://code.jquery.com/jquery-3.5.1.js"></script> <script src="https://cdn.datatables.net/1.10.24/js/jquery.dataTables.min.js"></script> <script src="https://cdn.datatables.net/1.10.24/js/dataTables.bootstrap4.min.js"></script> <!-- DataTable 的 HTML 代码 --> <table id="example" class="table table-striped table-bordered" style="width:100%"> <thead> <tr> <th>Name</th> <th>Position</th> <th>Office</th> <th>Age</th> <th>Start date</th> <th>Salary</th> </tr> </thead> <tbody> <tr> <td>Tiger Nixon</td> <td>System Architect</td> <td>Edinburgh</td> <td>61</td> <td>2011/04/25</td> <td>$320,800</td> </tr> <tr> <td>Garrett Winters</td> <td>Accountant</td> <td>Tokyo</td> <td>63</td> <td>2011/07/25</td> <td>$170,750</td> </tr> <!-- 更多数据 --> </tbody> </table> ``` 然后在 JavaScript 中,使用以下代码初始化 DataTable: ```javascript $(document).ready(function() { $('#example').DataTable(); } ); ``` 这样就可以将表格转换为 DataTable,添加搜索、排序、分页等功能。需要注意的是,表格必须使用 `id` 属性,并且在 JavaScript 中使用该 `id` 来初始化 DataTable。如果你想自定义 DataTable 的配置,可以在初始化时传入一个配置对象,例如: ```javascript $(document).ready(function() { $('#example').DataTable({ "paging": true, "ordering": true, "info": true }); }); ``` 这里只是简单地介绍了 DataTable使用方法,更多高级功能可以参考官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值