最近要把一个用
C#
写的组件修改为
VB.net
的,由于以前对
VB
不是很熟悉,在修改的时候,发现很多的对应写法都要查,没有对照表,查起来就非常费事,咨询了一下
思归
,问有没有
VB.net
跟
C#
对应语法的关系表,
思归
反馈下面的地址:
http://www.harding.edu/USER/fmccown/WWW/vbnet_csharp_comparison.html
VB.NET and C# Comparison
考虑到那个页面打开比较慢,我把它同时收藏到我的文章里面:连接在:
http://blog.joycode.com/ghj/posts/15091.aspx
一些
C#
代码
与
VB.net
代码的转换的工具可以看以下地址:
http://authors.aspalliance.com/aldotnet/examples/translate.aspx
http://www.kamalpatel.net/ConvertCSharp2VB.aspx
http://www.ragingsmurf.com/vbcsharpconverter.aspx
http://w1.311.telia.com/~u31115556/desc/programs.htm
http://expert.csdn.net/Expert/topic/1645/1645967.xml
我试用了这几个转换器,个人感觉第一个
http://authors.aspalliance.com/aldotnet/examples/translate.aspx?
是这几个里面最好的。
我的实验是把一个分页组件从
C#
代码修改为
VB.net
代码,这个分页组件可以看:
http://www.microsoft.com/china/msdn/archives/library/dnaspp/html/PagerControls.asp
C#
代码转换为
VB.net
代码后,我稍作修改,就可以用了。我做的修改主要是以下几个地方:
1
、
VB.net
中类、枚举默认不是
Public
的,转换的时候可能有问题。
2
、事件触发代码不一样。比如如下代码:
C#
如下写:
protected virtual void OnClick(EventArgs e)
{
if (Click != null)
{
Click(this, e);
}
}
VB.net
如下写:
Protected Overridable Sub OnClick(e As EventArgs)
RaiseEvent Click(Me, e)
End Sub
3
、转换后属性信息会放错地方。如果有注释的话,会错误的放到注释前面。
如果需要从
C
#代码转换为VB代码的,强烈建议这个工具,一般的代码,转换后就可以运行,复杂的代码,稍稍修改,就可以了。强烈推荐。