Focus on WEB Application and Software Engineering
一月 10
    最近要把一个用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代码的,强烈建议这个工具,一般的代码,转换后就可以运行,复杂的代码,稍稍修改,就可以了。强烈推荐。

http://blog.joycode.com/ghj/archive/2004/03/07/15093.aspx

这里还有一篇关于代码转换的文章推荐:
蛙蛙推荐:代码换肤术——C#和VB
http://bbs.yesky.com/bbs/jsp/view.jsp?forumID=150&articleID=484733&pno=1

当前评分 2.3 , 共有 12 人参与

  • Currently 2.25/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

添加评论


 

看不清?点击图片看看
biuquote
Loading



关于我

kittow (天笑)
80年代生于“天府之国”四川
爱好:编程、篮球、数码、旅游
乘一叶兴趣小舟,漂泊于浩瀚IT海洋。。。
TITLE:MSE of UESTC & 软件设计师
Technical Capacity | Last Blog