Shi*_*nga 2 c# vb.net datatable
我有以下VB代码:
Dim dt As DataTable = DAL.WMS_Collaboration_Fetch(0).Tables(0)
If dt.Rows.Count > 0 Then
'Bind Dataset to Gridview
Dim _WMS_CollaborationInfo As New WMS_CollaborationInfo
With _WMS_CollaborationInfo
.CollaborationName = dt.Rows(0).Item["CollaborationName").ToString
.CollaborationID = dt.Rows(0).Item("CollaborationID").ToString
End With
Run Code Online (Sandbox Code Playgroud)
将它转换为C#代码,如下所示:
DataTable dt = DAL.WMS_Collaboration_Fetch(0).Tables(0);
if (dt.Rows.Count > 0) {
//Bind Dataset to Gridview
WMS_CollaborationInfo _WMS_CollaborationInfo = new WMS_CollaborationInfo();
{
_WMS_CollaborationInfo.CollaborationName = dt.Rows[0].Item["CollaborationName"].ToString;
_WMS_CollaborationInfo.CollaborationID = dt.Rows[0].Item["CollaborationID"].ToString;
}
Run Code Online (Sandbox Code Playgroud)
但是,我无法运行C#代码.在VB中,使用DataTable的表列只需传入列名即可访问(好吧,我对VB不太了解),例如"CollaborationID"in
dt.Rows(0).Item("CollaborationID").ToString
Run Code Online (Sandbox Code Playgroud)
请问使用DataTable从表中读取数据的C#等价物是什么?我只是说我如何重新编写我的C#代码以便它可以工作.
C#中的索引器使用方括号 - [].您也不需要访问.Item:
_WMS_CollaborationInfo.CollaborationID =
dt.Rows[0]["CollaborationID"].ToString();
Run Code Online (Sandbox Code Playgroud)
在C#中,方法和索引器之间存在区别.第一个使用括号,第二个使用括号.从VB中移动时,我花了一些时间来掌握,两者都使用括号.
尝试:
dt.Rows[0].Item["CollaborationID"].ToString()
Run Code Online (Sandbox Code Playgroud)
编辑:VB.NET和C#比较
我曾经一直参考这个备忘单,查看Arrays部分:http: //www.harding.edu/fmccown/vbnet_csharp_comparison.html
| 归档时间: |
|
| 查看次数: |
658 次 |
| 最近记录: |