JScript.NET 可以用于编写 .NET 应用程序脚本吗?

2023-11-23

自从多发性硬化症似乎已在最新的 DLR 中终止了托管 JavaScript对于服务器端(ASP.NET Futures)和客户端(Silverlight),是否有人成功使用未过时的 API 来允许使用 JScript.NET 编写其应用程序对象的脚本和/或可以解释如何做到这一点?如果 Mono/JScript 解决方案稳定并且满足以下要求,那么它也可能是可以接受的。

我们有兴趣将使用 Microsoft JScript 引擎和 ActiveScript API 的脚本主机升级为具有更高性能和更易于扩展的东西。我们有超过 16,000 个服务器端脚本,源代码超过 42MB,因此重写为另一种脚本语言是不可能的。

我们的具体要求是:

  • Noteably better performance than the Microsoft JScript (ActiveScript) engine
    • 更好的运行时性能和/或
    • 保留预解析或编译的脚本(不要在每次运行时重新解析)
    • 降低或等于内存消耗
  • Full ECMA-262 ECMAScript compatibility
    • 可以容忍一点移植
  • Injection of custom objects into the script namespace
    • .NET 对象(不是硬性要求)
    • COM 对象或封装在 .NET 中的 COM 对象
  • Instantiation of COM objects from Script
    • à la “new ActiveXObject(progid)”
    • 鉴于前面的情况,优先级较低
  • Include files
    • 将“帮助程序脚本”预加载到脚本执行上下文中
    • 一个“include”函数或语句(鉴于上述内容,很容易创建)
  • Support for code at global-scope
    • 全局范围内执行代码
    • 保留在全局范围内初始化的值
    • 从全局范围中提取值
    • 全球范围内的值注入和替换
  • Calling of script-defined functions
    • 带参数
    • 并可以访问先前初始化的全局范围
  • 源码级调试
  • 商业或开源支持
  • 未过时的 API

我回答过类似的问题here。看一下IronJS,在 DLR 上运行的 F# 中的 JavaScript 实现。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JScript.NET 可以用于编写 .NET 应用程序脚本吗? 的相关文章

随机推荐

  • dockerize 一个 wpf 应用程序并使用它

    我正在尝试对 wpf 应用程序进行 dockerize 当时只是一个简单的应用程序 现在我得到了这个 dockerfile FROM microsoft nanoserver WORKDIR C run PATH ENTRYPOINT C
  • 如何在WinForms中制作ownerdraw Trackbar

    我正在尝试制作一个带有滑块拇指自定义图形的轨迹栏 我从以下代码开始 namespace testapp partial class MyTrackBar System Windows Forms TrackBar public MyTrac
  • PHP 确定多个(n)日期时间范围何时相互重叠

    我正在努力解决以下问题 这是一个日历程序 给定多个人的一组可用日期时间集 我需要找出每个人在 PHP 中可用的日期时间范围 可用性集 p1 start 2016 04 30 12 00 end 2016 05 01 03 00 p2 sta
  • 如何检测用户的区域设置以获得正确的 csv 分隔符?

    我有一个简单的数据转换工具 它可以生成的输出之一是 csv 文件 这在英国非常有效 但当我将其运送给德国客户时 我遇到了一些问题 具体来说 他们使用 表示浮点数中的小数点 反之亦然 这意味着当他们在 Excel 中打开数据文件时 结果至少可
  • 如何使用四开同时编织两种格式?

    是否可以通过在 YAML 标头中指定来一次从 Quarto R Markdown 文档创建多种输出格式 我的猜测没有成功 title Stacked Area chart with Annotations format html gfm 尝
  • jqGrid - rowObject 不一致?

    带有 jqgrid rowObject 的第一页结果返回预期数据 但随后返回后续结果页的不完整数据 为什么 结果第一页 rowObject 3 将等于 2 结果的后续页面 rowObject 3 将等于 未定义 并且返回结果的第一页现在也将
  • 可选参数和继承

    我了解可选参数 并且非常喜欢它们 但我想更多地了解如何将它们与继承的接口一起使用 附件A interface IMyInterface string Get string Get string str class MyClass IMyIn
  • Amazon API Gateway:通过 Postman 调用 API 时,响应正文未转换?

    通过 AWS API Gateway 控制台执行测试时 我发现 Lambda 函数的输出响应已正确转换 type message request id 请参阅下面的日志 Tue Sep 06 14 46 06 UTC 2016 Endpoi
  • 删除R中的冗余列[重复]

    这个问题在这里已经有答案了 我有类似的东西 date pgm in x logs out y 20130514 na 12 j1 12 20131204 z2 03 j1 03 20130516 a01 04 j0 04 20130628
  • 迭代 numpy 数组列的所有成对组合

    我有一个大小为 numpy 的数组 arr size 200 600 20 我想计算scipy stats kendalltau在最后两个维度的每个成对组合上 例如 kendalltau arr 0 0 arr 1 0 kendalltau
  • JSP EL ${stuff} 语法不起作用

    我有两个问题 第一个是我使用JSP 无法解决 第二个是我的行为很奇怪 当我将其放入 servlet 的 doGet 方法中时 req setAttribute test SARASA req getRequestDispatcher WEB
  • df1 中不在 df2 中的所有行

    我有一个 df df1 如下所示 df1 pd DataFrame YYZ SFO 1 YYZ YYD 1 YYZ EWR 1 YYZ DFW 1 YYZ LAX 1 YYZ YYC 1 columns city1 city2 val 我有
  • 你能解释一下Java中的“isXxx”方法名称吗?

    规范之一中是否引用了以 is 开头的方法 而方法名称的后缀是属性名称 类似于 Java bean 的 getter setter 方法 例如 public boolean isConditionTrue private boolean co
  • CRM 365 callManagerInfo 插件中出现错误

    将 CRM 2013 本地升级到 CRM365 后 开始出现插件问题 每次我尝试使用插件中的 IOrganizationService 进行任何操作时 我都会收到错误 此问题仅在多服务器安装时出现 在CRM 2013版本上没有出现这种情况
  • 如何启用“启用.NET Framework 源代码步进”?

    2013 年 2 月 22 日更新 Microsoft Connect 条目有 Alok Shriram 程序经理 基类库 NET Framework 的注释 该问题现在应该得到解决 连接条目标记为已解决 已修复 这个问题现在应该得到解决
  • Android 类 BaseAdapter 中的 getItem 和 getItemId 方法的用途是什么?

    我很好奇这些方法的目的getItem and getItemId在 Android SDK 的 Adapter 类中 从描述来看 似乎getItem应该返回底层数据 所以 如果我有一个名字数组 cat dog red 我创建了一个适配器a使
  • 将数组中的连续数字分组

    我需要将连续数字添加到新数组中 如果不是连续数字 则仅将该值添加到新数组中 old array 1 2 3 5 7 8 9 20 21 23 29 我想得到这个结果 new array 1 2 3 5 7 8 9 20 21 23 29 有
  • 如何在 swift 3.0 中连接多个可选字符串?

    我正在尝试在 swift 3 中连接多个字符串 var a String a var b String b var c String c var d String a b c 编译时我收到以下错误 error cannot convert
  • 如何在 tail -f 命令后继续运行脚本

    我有以下脚本 tail f nohup out echo 5 When I press Ctrl C on tail f the script stops running the 5 is not printed How can I run
  • JScript.NET 可以用于编写 .NET 应用程序脚本吗?

    自从多发性硬化症似乎已在最新的 DLR 中终止了托管 JavaScript对于服务器端 ASP NET Futures 和客户端 Silverlight 是否有人成功使用未过时的 API 来允许使用 JScript NET 编写其应用程序对