函数突然需要'sender As Object,e As System.EventArgs'

时间:2014-02-26 18:56:50

标签: asp.net vb.net function code-behind

我正在对asp.net项目进行最终调试。我在代码隐藏中的功能都很简单,大多数都不带任何参数。例如,我使用如下函数登录用户:

Sub LogInUser()

    (my code)

End Sub

这些是从关联的.aspx页面调用的,通常是按钮。这已经好几周了。突然今天早上,我的所有页面都给了我错误:

BC30408: Method 'Public Sub SearchAndChangePage()' does not have 
the same signature as delegate 'Delegate Sub EventHandler
(sender As Object, e As System.EventArgs)'.

我将这些默认参数添加到我的函数中,然后又开始工作了。我想我可以通过我的整个应用程序来做这件事,然后和那些采取其他争论的人一起玩,但是有人能告诉我为什么我的应用程序会突然表现出来吗?我真的很讨厌我无法解决的代码,即使我弄清楚如何解决它们。

有一件事,我已将.axpx和.aspx.vb文件从我的本地开发环境(在“解决方案”文件夹中)移到服务器上。但他们在服务器上工作正常,直到今天早上。

1 个答案:

答案 0 :(得分:3)

听起来你已经转过Options Strict On,所以VB.NET不再允许你逃脱谋杀。

实际上,像SearchAndChangePage这样的潜点词应该始终具有object sender, EventArgs e签名,但是你可以在没有签名的情况下逃脱。

但是你做到了,你现在就像专业人士一样编程 - 这是做事的正确方法,你不会在没有被告知的情况下犯错误。