Foxtable(狐表)用户栏目专家坐堂 → 关于项目中动态加载代码的写法


  共有1921人关注过本帖树形打印复制链接

主题:关于项目中动态加载代码的写法

帅哥哟,离线,有人找我吗?
ap9709130
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1468 积分:11440 威望:0 精华:0 注册:2013/11/24 22:10:00
关于项目中动态加载代码的写法  发帖心情 Post By:2018/4/4 16:40:00 [显示全部帖子]

老师

我现在在做一个项目,基本的代码都是动态加载的.现在试了一下速度都可以达到要求.

但是在一些事件动态加载时,e 参数的写法不会,请问一下,要怎么写?
HttpRequest事件的,在移动帮助里有是这样写:Dim e As RequestEventArgs = args(0)

如果是项目事件中,NetworkAvailabilityChanged 中要引用e参数,要怎么写? ....
窗口事件中 如果要引用 enter 事件中,e 参数要怎么写? ....

还在表事件上中的DataColChanged 和 DoubleClick 要怎么写? ...

 回到顶部
帅哥哟,离线,有人找我吗?
ap9709130
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1468 积分:11440 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2018/4/4 22:50:00 [显示全部帖子]

老师

我试了一下,好像会有错误.我的代码如下:

Dim e As object = args(0)  //直接写到项目中不用这个
If e.IsAvailable = True Then
    If Connections.TryConnect("Provider=SQLOLEDB.1;Password=@******#;Persist Security Info=True;User ID=sa;Initial Catalog=aaa;Data Source=1XX.XX.XX.XX") = True Then
        Vars("wlpd") = True
MessageBox.show(0)
    Else
        Vars("wlpd") = False
MessageBox.show(1)
    End If
Else
    Vars("wlpd") = False
MessageBox.show(2)
End If

代码如果直接定在项目的NetworkAvailabilityChanged 事件中是没有问题的. 

但是如果我把代码动态的加入到函数中  在第一句代码中:Dim e As object = args(0) 加入这个

然后用:Functions.Add("test",Code)
Functions.Complie()
可以加入进去不会报错


但是在NetworkAvailabilityChanged 事件中写入:

Functions.Execute("test")


当触发事件时,就会报错:错误如下:


.NET Framework 版本:2.0.50727.8825

Foxtable 版本:2018.3.3.1

错误所在事件:自定义函数test

详细错误信息:

调用的目标发生了异常。

索引超出了数组界限


是什么原因?

 回到顶部