簡體   English   中英

使用轉換后的VB轉換為C#代碼

[英]working with converted VB to C# code

我有以下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

將它轉換為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;
    }

但是,我無法運行C#代碼。 在VB中,使用DataTable的表列只需傳入列名即可訪問(好吧,我對VB不太了解),例如“CollaborationID”in

dt.Rows(0).Item("CollaborationID").ToString

請問使用DataTable從表中讀取數據的C#等價物是什么? 我只是說我如何重新編寫我的C#代碼以便它可以工作。

C#中的索引器使用方括號 - [] 您也不需要訪問.Item

_WMS_CollaborationInfo.CollaborationID = 
           dt.Rows[0]["CollaborationID"].ToString();

在C#中,方法和索引器之間存在區別。 第一個使用括號,第二個使用括號。 從VB中移動時,我花了一些時間來掌握這兩個問題。

嘗試:

dt.Rows[0].Item["CollaborationID"].ToString()

編輯:VB.NET和C#比較

我曾經一直參考這個備忘單,查看Arrays部分: http//www.harding.edu/fmccown/vbnet_csharp_comparison.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM