我想使用Jint加载JavaScript文件,但我似乎无法弄清楚。该文件说我可以做一些像engine.run(file1)
,但它似乎并没有加载任何文件。我需要用文件名做一些特别的事吗?如何在C#中使用Jint加载JavaScript文件?
这是我的JavaScript文件:
// test.js
status = "test";
这里是我的C#
JintEngine js = new JintEngine();
js.Run("test.js");
object result = js.Run("return status;");
Console.WriteLine(result);
Console.ReadKey();
如果我把代码手动Run
它的工作原理。
object result = js.Run("return 2 * 21;"); // prints 42
System.Runtime.Serialization.SerializationException了未处理 消息=输入流不是一个有效的二进制格式。起始内容(以字节为单位)为:73-74-61-74-75-73-20-3D-20-22-74-65-73-74-22-3B-0D ... Source = mscorlib StackTrace: at System.Runtime.Serialization.Formatters.Binary.SerializationHeaderRecord.Read(__ BinaryParser input) at System.Runtime.Serialization.Formatters.Binary .__ BinaryParser.ReadSerializationHeaderRecord() –
@Daniel,我不确定,但点是'Run()'期望一个脚本执行而不是文件名;尝试将文件的内容手动读入一个字符串('File.ReadAllText()'),然后尝试用该字符串调用'Run()'。 –