1
這沒有意義即使找到密鑰,密鑰更新失敗
我有一系列的數據字典,我試圖創建另一個。
所以,我通過東西循環和檢查鍵,更新鍵適用,但遇到了奇怪的問題
If completeDictionary.ContainsKey(sale("splitType1")) Then
completeDictionary(sale("splitType1")) += (sale("splitPay1") - pxValues)
Else
completeDictionary.Add(sale("splitType1"), (sale("splitPay1") - pxValues))
End If
在這裏,我們檢查,如果在completeDictionary
一鍵存在,這個名字sale("splitType1")
那麼如果密鑰存在,則更新它的值,如果沒有,則添加一個新值。
這應該做工精細,但它似乎是找到關鍵,但不能更新它,我得到這個錯誤:
The given key was not present in the dictionary.
,這指的是線路:
completeDictionary(sale("splitType1")) += (sale("splitPay1") - pxValues)
但是,如果鑰匙不存在,它不應該跑這條線,因此它之前的If
!
completeDictionary
是通過數組循環創建:
Dim completeDictionary As New Generic.Dictionary(Of String, Double)
For Each Type as string In paymentTypes << paymentTypes is simply an array
completeDictionary.Add(Type, 0.0)
Next
這個令人沮喪的問題任何幫助非常感謝!
我不認爲'賣(「splitPay1」)'在字典中 – AbZy
@AbZy的關鍵 - 確實如此。 – Oded
我明白你來自哪裏,但事實並非如此。銷售(「splitPay1」)和銷售(「splitType1」)來自數據庫表。他們不能在那裏。對不起,我會更新這個問題,因爲那部分不清楚。 –