Yahoo奇摩知識+將於 2021 年 5 月 4 日 (美國東部時間) 終止服務。自 2021 年 4 月 20 日 (美國東部時間) 起,Yahoo奇摩知識+服務將會轉為唯讀模式。其他Yahoo奇摩產品與服務或您的Yahoo奇摩帳號都不會受影響。如需關於Yahoo奇摩知識+ 停止服務以及下載您個人資料的資訊,請參閱說明網頁。

ASP.NET array.IndexOf 一問

Public Structure NumberSet

Dim Number As String

Dim Count As Integer

End Structure

Dim Sorting_Referance() As NumberSet

Dim Test as Integer = 0

我想使用 DataReader.Read() 從資料表逐一讀出資料列, 並且找出該資料與 Sorting_Referance().Number 所在相同內容的位置, 請問該如何寫?

下列語法是錯的, Test 會永遠等於 -1

Test = Array.IndexOf(Sorting_Referance, DataReader.Read(0))

2 個解答

評分
  • ?
    Lv 7
    9 年前
    最佳解答

    第一, DataReader的 .Read()方法

    http://msdn.microsoft.com/zh-tw/library/system.dat...

    根本沒有您這種用法,如 DataReader.Read(0)

    應該是這樣

    While DataReader.Read()

    ......

    End While

    第二,除非您的資料表「欄位的資料型態」

    跟您自己定義的型態一模一樣,您才能這樣比較吧

    想想看 您自己定義的型態 (NumberSet)

    直接跟資料表的哪種資料型態對應呢? VarChar ? Int?....等等

    可以這樣比較嗎?

    絕對比不出來的

    您似乎有點「知其然,不知其所以然」

    所以連犯了兩種錯誤

    第一,不懂這個方法怎麼用?

    第二,這一種方法裡面的參數,該傳入哪些資料型態(字串、整數等等)要注意一下啊

    不懂的話 可以查一下MSDN

    就好像一個英文單字不懂,你要查字典,對嗎?

    ASP.NET專題實務 、教學網站

    http://www.dotblogs.com.tw/mis2000lab/

    上述的教學範例,是我書本的文章

    如果真的想學一些好招數

    真的有心進入業界

    找來看看吧!

    2011年 PChome一千大暢銷書籍

    電腦書只有 29本上榜,我的書就上了兩本

  • 匿名使用者
    9 年前

    用for逐一比對吧-.-

還有問題?馬上發問,尋求解答。