我创建了一个 C# Windows 运行时组件,它有一个接受 IDictionary 参数的公共静态方法。
public sealed class DictionaryTest
{
public static void print(IDictionary<string, string> dict)
{
}
}
我正在从 WinJS 应用程序访问该库,并在 default.js 中调用此方法,如下所示:
var ps = new Windows.Foundation.Collections.PropertySet();
ps['testkey'] = "testvalue";
TestComponent.DictionaryTest.print(ps);
当我运行应用程序时,我收到“不支持此类接口”错误。print() 的智能感知显示它接受 Windows.Foundation.Collections.IMap 的参数,但我找不到该集合。
如何将字典之类的对象从 Javascript 传递给 print(IDictionary)?
编辑:虽然@IAbstract 提出了一个很好的观点,但我不能将其用作解决方案。我的限制是我不能修改 print() 方法。所以我需要能够将字符串的字典类型对象从 javascript 传递给print(IDictionary<string, string> dict)
方法。