前天实现了FireScript脚本支持事件绑定的语法分析和执行器。
今天专门测试了一下FireScript对Asp.Net的支持情况,由于现在FireScript还没有实现对静态类和枚举的支持(这个明天继续完善),所以测试代码通过在脚本引擎中加入全局变量的方法来实现对枚举的访问。这个是测试页面的代码:
1
object
red
=
Color.Red;
2
object
blue
=
Color.Blue;
3
object
green
=
Color.Green;
4
object
yellow
=
Color.Yellow;
5
6
ev.PutVariable(
"
Text2
"
,
ref
oo);
7
ev.PutVariable(
"
red
"
,
ref
red);
8
ev.PutVariable(
"
blue
"
,
ref
blue);
9
ev.PutVariable(
"
green
"
,
ref
green);
10
ev.PutVariable(
"
yellow
"
,
ref
yellow);
11
object
result
=
ev.Run(er);
12
if
( result
!=
null
)
13
{
14
this
.TextBox2.Text
=
result.ToString();
15
}
下面是测试页面:![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
7
![](/Images/OutliningIndicators/None.gif)
8
![](/Images/OutliningIndicators/None.gif)
9
![](/Images/OutliningIndicators/None.gif)
10
![](/Images/OutliningIndicators/None.gif)
11
![](/Images/OutliningIndicators/None.gif)
12
![](/Images/OutliningIndicators/None.gif)
13
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
14
![](/Images/OutliningIndicators/InBlock.gif)
15
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![](https://www.cnblogs.com/images/cnblogs_com/flyfire/51837/r_Snap1.jpg)
在左边的输入框,我们可以输入脚本。现在我们有5个可以使用的全局变量,操作属性截图如下:
![](https://www.cnblogs.com/images/cnblogs_com/flyfire/51837/r_Snap2.jpg)
![](https://www.cnblogs.com/images/cnblogs_com/flyfire/51837/r_Snap3.jpg)
哈,脚本在.Net中终于完成了,下面要做的就是在.Net中测试导入脚本文件,看是否能正常执行~