簡體   English   中英

ASP.NET C#到VB的轉換

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM