在winrt/xaml/c#应用程序中动态评估javascript表达式

dynamically evaluating javascript expressions in winrt/xaml/c# applications

本文关键字:动态 评估 javascript 表达式 应用程序 winrt xaml      更新时间:2023-09-26

在用XAML和c#编写的winrt应用程序中,有没有一种方法可以评估在运行时从外部源加载的javascript表达式?

考虑以下伪代码:

String expression = File.ReadAll(somefile);
String result = AnyJavascriptEngineAvailableUnderWinRT.Evaluate(expression);

在winrt之前,我们一直在使用Microsoft.JScript引擎。现在,使用winrt,我们一直在尝试Jint,这导致运行时异常"API的System.Type.ReflectionOnlyGetType(System.String,Boolean,Boolean)"无法在当前平台上使用。请参阅http://go.microsoft.com/fwlink/?LinkId=248273了解更多信息。"

老实说,我更喜欢解决winrt自带的内置javascript引擎,但如果它允许动态评估表达式,我也会接受"AnyJavascriptEngineAvailableUnderWinRT"。

您可以通过WebView直接进入IE轻松完成此操作。

像这样:

var js = "whatever you want";
var webView = new WebView();
var result = webView.InvokeScript("eval", new[] { js });

祝你好运!