将javascript对象传递给c#编写的winrt组件

本文关键字:winrt 组件 javascript 对象 | 更新日期: 2023-09-27 17:50:52

我在c#中创建了一个WinRT组件,它接受一个集合作为参数。

namespace MyNamespace {
  public sealed class MyClass {
    public MyFunction(IReadOnlyDictionary<string, string> properties) {
    }
  }
}

我想在javascript中使用这个组件,如下所示:

var x = new MyNamespace.MyClass();
x.MyFunction({'aaa': 'bbbb'});

我不知道为什么这是不工作。什么好主意吗?

将javascript对象传递给c#编写的winrt组件

我想这就是你的答案。

var ps = new Windows.Foundation.Collections.PropertySet();
ps['aaa'] = "bbb";
var x = new MyNamespace.MyClass();
x.MyFunction(ps);

"您的WinRT组件将需要公开(或重用)一个具体的类来实现您需要的IMap的特定实例化…"