ASP.NET对Dynamic Language Runtime(DLR)的支持



 在ASP.NET的下一个版本当中,将可能开始支持Dynamic Language(动态语言),微软针对DLR支持最早出现的场合是Silverlight, 接着是ASP.NET Futures release,如果读者有安装VS 2005+ASP.NET Futures,则会看到在新增网站项目当中,出现了下面画面:


当您选择了Managed Jscript之后(它是 ASP.NET最新支持的两种动态语言之一),您会发现建立出来的项目是完全相同的:

 

那这样所谓的“动态语言”到底和传统的C# 或是VB有何差别呢?

说“动态语言”似乎很高深,其实说穿了就是Script类型的语言,也就是执行方式是 “解译式”而非“编译式”,这类语言的好处是,可以通过代码动态产生代码并且再加以执行,概念很简单但是意义却很重大。

举一个简单的例子,请参考上图中的画面,我在表单上放置两个TextBox,和一个Button,并且编写下面的代码:
function Button1_Click(sender, e)
{
TextBox2.Text = eval(TextBox1.Text).toString();
}
请注意这段代码是Managed Jscript,因此扩展名为.jsx:

请注意我在第一个TextBox当中所输入的是“运算式(也可以是代码,而非单纯的数值)”:


通过
TextBox2.Text = eval(TextBox1.Text).toString();

eval指令,将会执行TextBox1中的运算式,再把结果传入textBox2。
从上面的范例你会发现,通过DLR,我们可以用代码来产生(并执行)代码,实现动态运算的效果。
以上范例代码请点选这里下载 (执行前请务必先安装ASP.NET 2.0+ASP.NET Futures Release)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值