2016-12-06 42 views
0

下面的代碼是爲了在客戶端記錄添加到文件時生成一個ID號。但它生成的ID號始終爲0。這是爲什麼?VB.NET代碼生成值爲0,但我不知道如何可能

For index = 1 To LOF(1)/Len(ClientRecord) 
      FileGet(1, ClientRecord, index) 
      If ClientRecord.ClientID > IDofClientRecord Then 
       IDofClientRecord = ClientRecord.ClientID 
      End If 
      IDofClientRecord = IDofClientRecord + 1 
      IDofClientRecord = ClientRecord.ClientID 
     Next 
+0

這是SOOOOO更容易存儲記錄在數據庫中或序列化它們的集合,而不是使用那些傳統的VB函數 – Plutonix

+0

可悲的是,我必須這樣做我的課程。 –

回答

0

有很多你沒有在這裏指定,但讓我們刺傷它。 如果你想生成ID是ClientRecord.ClientID的話,我覺得這是你的問題:

IDofClientRecord = IDofClientRecord + 1

IDofClientRecord = ClientRecord.ClientID

第二行覆蓋第一線,你從來沒有取得任何進展。 如果顛倒倒數第二行:

ClientRecord.ClientID = IDofClientRecord

它可能工作,但假設信息沒有記錄;-)

+0

儘管這應確保嚴格增加ClientRecord.ClientID,即使它從大於IDofClientRecord開始(從文件獲取),它也會增加ClientRecord.ClientID。 – greybeard

+0

我試過這個,但是它做了一些很奇怪的事情。它使得clientID每增加一個更大的數字。它從1到2到4到7到11到16等等。我無法弄清楚 –

+0

是的,這個邏輯有問題,但是我不能說出你正在嘗試做什麼。你能更好地解釋那些代碼試圖做什麼嗎? – Chestdawg

相關問題