字典(字符串,字符串)无法评估表达式

字典(字符串,字符串)无法评估表达式

问题描述:

当调用Sub来使用DictionaryEntry()中的键和值填充System.Collections.Generic.Dictionary时,在调试模式下检查Dictionary时,每个属性都有一个红色圆圈与X和包含文字“无法评估表达式”。它似乎工作,它甚至会抱怨,如果我尝试使用相同的键/值对添加两个条目。即使我的测试字符串(valuesString)已填充,也不存在任何键或值。字典(字符串,字符串)无法评估表达式

我打电话从一个FormView的ItemInserted事件分(.Net框架4时,Visual Studio 2013 Web表单应用程序)

Protected Sub PopulateDictionary(myValues As DictionaryEntry()) 

     Dim de As DictionaryEntry 
     Dim valuesString As String = String.Empty 
     Dim myDictionary As New Dictionary(Of String, String) 

     For Each de In myValues 

      'This works - the string is populated with key/value pairs 
      valuesString &= "Key=" & de.Key.ToString() & ", " & _ 
       "Value=" & de.Value.ToString() & "<br/>" 

      'This doesn't - just get the red circle with an X 
      myDictionary.Add(de.Key.ToString(), de.Value.ToString()) 

     Next 
End Sub 

这到底是怎么回事?我没有运气重新启动Visual Studio。

+0

我确实通过传入来自SqlDataSourceStatusEve的Parameters集合来解决这个问题ntArgs代替。我仍然不确定为什么字典无法在ItemInserted事件中工作,所以我希望也许有人对此有一个答案。 – Trevor*s 2015-03-16 17:15:43

奇怪的是,这与"<br/>"一起使用。它看起来像缺少结束报价。 (也许并不需要的ToString()?)

valuesString &= "Key=" & de.Key.ToString() & ", " & _ 
      "Value=" & de.Value.ToString() & "<br/>" 

它看起来像这样:

myDictionary.Add(de.Key.ToString(), de.Value.ToString()) 

只是需要:

myDictionary.Add(valuesString) 

或(不知道...) :

myDictionary.Add(DictionaryEntry()) 
+0

不,这不能解决问题,对不起。 – Trevor*s 2015-03-27 16:20:34