![](/img/trans.png)
[英]C# Excel Interop: how can I “get” a table that is already in a worksheet?
[英]How can I get C# to interop with Javascript?
我想在我的 C# 程序中托管 Javascript。 我希望允许用户编写自定义 Javascript 代码,并让我的 C# 程序运行他们的功能,以及允许用户使用我的框架代码。
是否有可能做到这一点? 如果是这样,如何?
编辑:明确地说,我没有在这个项目中使用 ASP.NET。
您还可以使用 webbrowser 控件在 html 文档中托管 javascript,要在两者之间进行交互,您可以创建一个 COM 可见类并将其实例设置为 ObjectForScripting 属性。
'external' 类的任何公共成员现在都可以通过 javascript 中的 window.external 访问。 此外,从托管代码方面,您可以使用文档的 InvokeScript 方法来调用任何 javascript 函数。
这样很容易在两者之间传递复杂的对象。
我在这个 Google Earth Api 应用程序中大量使用了这个想法。 http://frasechapman.blogspot.com/2008/08/google-earth-plug-in-and-c.html
我强烈建议您使用Microsoft 动态语言运行时 (DLR) 。 它在生活中的目的是促进 .Net 环境中的脚本编写。 DLR 不是特定于脚本的,因此随着时间的推移,将在它之上构建更多脚本语言,但目前我知道的是 IronRuby、IronPython 和 JScript。
Spidermonkey .NET可能正是您要找的。
我不确定它有多发达。 但它基本上是Mozilla 的 Spidermonkey Javascript 解析器引擎的一个端口,我非常喜欢它。
或者你可以直接评估它
过去这样做的方法是 Windows Script Host,它允许您托管 JSCRipt 或 VBScript。
您可以在 HTML 组件中嵌入 JavaScript。 对于另一种方式,正确的东西是 ASP.NET Web 服务。 也许使用智能客户端,您可以将两者结合起来。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.