[英]ASP.NET C# to VB conversion
我有一個要更新的Web應用程序。 我需要使用Visual Basic進行編碼,但是舊版本具有一些C#代碼,這使我很難轉換成VB。 多謝您能給予我的幫助。 :)
clsSeguridad oseg = new clsSeguridad();
oseg.DatosLogin += new EventHandler<clsSeguridad.DatosLoginEventArgs>(oseg_DatosLogin);
第一行很容易翻譯。 基本上,這是正在發生的事情:cslSeguridad是一個自定義類,其中包含許多用於驗證用戶登錄的方法。 為了登錄,必須首先創建對象,然后添加稍后將在方法中調用的EventHandler。 那是我的問題...我似乎無法添加新的處理程序... Visual Studio建議我使用RaiseEvent,但是我不確定那是我應該做的,因為我沒有寫下原始代碼。 先謝謝您的幫助。
在VB.NET中,您將使用:
AddHandler oseg.DatosLogin, New EventHandler(Of clsSeguridad.DatosLoginEventArgs)(oseg_DatosLogin)
AddHandler語句用於將函數或子例程附加到事件。
為了將來參考,您可以使用眾多可用的在線工具之一在C#和VB之間轉換代碼。 馬特·威爾科(Matt Wilko)建議http://www.carlosag.net/Tools/CodeTranslator/
我知道使用.Net反射器在C#和VB之間轉換代碼。 您還可以選擇Delphi,F#,IL C ++和Oxygene作為語言目標。 如果使用調試程序集,則反匯編的代碼段通常與您手工編寫的代碼段非常接近。
有兩種方法
1。 硬編碼處理
聲明您的類成員_member WithEvents
,然后將方法聲明為
`private sub MySub() Handles _member.Event`
2。 更動態的方式
在代碼中使用的某個地方
AddHandler _member.Event, addressOf (handling_sub)
不要忘了使用RemoveHandler
或...內存泄漏
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.