在 Windows 10 Universal App 中从 JavaScript 调用 C# 组件

Calling C# component from JavaScript in Windows 10 Universal App

我正在尝试在我的 Windows 10 通用应用程序 (JavaScript) 中使用 Windows 运行时组件 (C#)。 我在 Windows 8.x 商店应用程序中找到了如何做到这一点: https://msdn.microsoft.com/en-us/library/hh779077.aspx 但此解决方案不适用于 Windows 10 Universal App。 class 未在 JavaScript.

中注册是抛出异常

WRC代码:

namespace SampleComponent
{
    public sealed class Example
    {
        public static string GetAnswer() 
        { 
            return "The answer is 42."; 
        }

        public int SampleProperty { get; set; }
    }
}

在 JS 中:

 document.getElementById('output').innerHTML =
        SampleComponent.Example.getAnswer();

经过一些研究,我发现在 Any CPU 模式下构建时会出现此问题。对于 x86/x64 它工作正常。目前这个解决方案对我来说已经足够了。如果我找到如何在其他平台上 运行 它,我将 post 在这里提供更多信息。

如果您开发使用 XAML/C# 编写的 Windows 10 应用程序或使用 HTML/JS 编写的应用程序,则任何 CPU 模式不可用(默认情况下)由于“.Net native”而用 C# 编写的 WinRT 组件

你必须瞄准好的平台:)