Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 即使找到键,按键更新字典也会失败_Arrays_Vb.net_Collections_Dictionary - Fatal编程技术网

Arrays 即使找到键,按键更新字典也会失败

Arrays 即使找到键,按键更新字典也会失败,arrays,vb.net,collections,dictionary,Arrays,Vb.net,Collections,Dictionary,这毫无意义 我有一系列的数据字典,我正试图从中创建另一个 所以,我在循环查找资料,检查密钥,在适用的地方更新密钥,但遇到了最奇怪的问题 If completeDictionary.ContainsKey(sale("splitType1")) Then completeDictionary(sale("splitType1")) += (sale("splitPay1") - pxValues) Else completeDictionary.Add(sale("splitTyp

这毫无意义

我有一系列的数据字典,我正试图从中创建另一个

所以,我在循环查找资料,检查密钥,在适用的地方更新密钥,但遇到了最奇怪的问题

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
Dim completeDictionary作为新的泛型词典(字符串,双精度)

对于paymentTypes中的每个字符串类型,您只需检查
splitType1
,还可以访问
splitPay1
-这可能是缺少的条目:

completeDictionary(sale("splitType1")) += (sale("splitPay1") - pxValues)

我不认为
sale(“splitPay1”)
是字典中的关键,我知道你来自哪里,但事实并非如此。sale(“splitPay1”)和sale(“splitType1”)来自数据库表。他们不可能不在那里。抱歉,我将更新问题,因为那部分不清楚。@JamieHartnoll-你调试了吗?你检查过了吗?啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊!!很抱歉你说得对,我改变了该死的表格行名称!!!真不敢相信我在那上面浪费了这么多时间。。。我去拿外套!