对windows phone应用程序使用哈希表时出错

本文关键字:哈希表 出错 windows phone 应用程序 | 更新日期: 2023-09-27 18:22:13

我想使用这个表达式解析器。

我导入这个网站上的代码:

using System;
using System.Collections;
using info.lundin.Math;
// some other imports
public class Test 
{
  public static void Main( String[] args )
  {
    // Instantiate the parser
    ExpressionParser parser = new ExpressionParser();
    // Create a hashtable to hold values
    Hashtable h = new Hashtable();
    // Add variables and values to hashtable
    h.Add( "x", 1.ToString() );
    h.Add( "y", 2.ToString() );
    // Parse and write the result
    double result = parser.Parse( "xcos(y)", h );
  }
}

但它表示找不到名称空间Hashtable。我搜索了一下,发现Silverlight中没有哈希表,我应该使用字典。

但当我使用字典时,它会给我一个错误,上面写着:无法从System.Collections.Generic.Dictionary<string,string>转换为System.Collections.Hashtable

有什么建议吗?

对windows phone应用程序使用哈希表时出错

我会修改解析器程序中的源代码,使其与Silverlight兼容(即将任何哈希表实现更改为字典实现)

Hashtables和ArrayLists不包含在silverlight中。所以你不能用它。

您可以使用泛型集合——List和Dictionary,而不是HashTables和ArrayLists。