当前位置:首页> 正文

关于将大型ASP.NET VB.NET项目转换为C#:将大型ASP.NET VB.NET项目转换为C#-逐步进行?

关于将大型ASP.NET VB.NET项目转换为C#:将大型ASP.NET VB.NET项目转换为C#-逐步进行?

Converting large ASP.NET VB.NET project to C# - incrementally?

正在寻找一些将现有的大型ASP.NET VB.NET项目增量转换为C#的方法,同时仍然能够将其部署为单个Web应用程序(当前每周部署)。

我的想法是只创建一个新的C#ASP.NET项目并缓慢移动页面,但是我从未尝试过这样做,并且在部署过程中以某种方式将其与另一个ASP.NET项目合并。

(澄清:大型ASP.NET VB.NET项目在VS IDE中是绝对的狗...)

有什么想法吗?


从业务逻辑开始,然后逐步进入页面。将所有内容封装到C#库中,您可以将其添加为对VB.NET站点的引用。

移植完所有后端并对其进行测试后,就可以开始制作单个页面了,尽管我建议您在完成所有转换之前不要推出。


允许您在App_Code目录中保留VB代码和C#代码。如此有效,当您有空闲时间进行转换时,您可以非常缓慢地进行操作。

目前,我的App_Code目录中同时包含VB.Net和C#代码,在业余时间,我将转换为VB.Net代码,或者在任何时候我必须回到带有VB.Net的页面并将其弄乱的时候,将其转换为C#。

当Easy Peasy和Microsoft允许您在同一应用程序上同时使用VB.NET和C#时,它变得更好。这是他们可以在整个应用制作过程中实施的最好的想法之一。

如果要将两个代码目录都添加到一个目录中,请将其添加到Web.config中

1
2
3
4
5
6
<compilation>
<codeSubDirectories>
   
   
</codeSubDirectories>
</compilation>

然后在您的App_Code目录中添加一个名为VB_Code的文件夹和另一个名为CS_Code的文件夹。然后将所有的vb / C#代码放入您的文件夹中,这样您的物品就可以了。


我喜欢港口吗?我真的看不出重点,也看不到所有努力将带来什么。也许在C#中编写任何新功能或重构缓慢/不良的现有逻辑/服务层到c#中,但是对于网页,我看不到80/20的好处。


尝试#Develop。我认为这是将支持的任何.net转换为任何.net支持的语言的最佳方法。

其他工具仅转换代码,但这将转换整个项目。


我已经成功用Reflector(免费)提取了vb项目的dll,并将代码视为C#。局部变量并不总是翻译,但是您可以在进行翻译时比较翻译和重构内容。


您可以在解决方案中简单地创建一个新的c#类库项目。在这里一次重新编码几个类,然后在主项目中替换vb类。

但老实说,我同意除非您尝试学习C#或真的不喜欢vb或感到无聊,否则我看不到好处。


我通过执行以下操作来完成一个项目:

  • 创建一个C#类库
  • 从VB Web应用程序引用C#类库
  • 在C#库中创建类背后的代码
  • 更新aspx / ascx文件中的"继承"属性以引用C#类(此文件在原始VB项目中仍然存在)
  • 一切正常。有时会有些痛苦,因为您现在必须浏览多个项目才能查看单个页面/控件,但这确实让我做了您想要做的事情。


    将旧内容保留在VB中。 C#中的所有新内容。迁移可能很慢,但您不会浪费时间。在空闲时间,使用C#进行更改。


    如果您有$ 179,就可以了。

    • http://www.tangiblesoftwaresolutions.com/Product_Details/Instant_CSharp.htm

    当然也有免费软件转换器可用。

    • http://www.google.com/search?q=convert+vb.net+csharp

    可以办到。好吧,我希望可以在旧版ASP.net应用程序上一点一点地做到这一点。您一次只能更改1个Webform。您可能会遇到困难的地方是,由于它们被编译在一起,因此在应用程序代码文件夹中似乎看不到混合语言。


    展开全文阅读

    相关内容