
What is the easiest way to convert from asp classic to asp.net?我是一个.Net开发人员,其任务是将经典的ASP网站升级到asp.net。 该网站目前正在靠运气和泡泡糖运行,但是没有足够的时间或金钱停止进度并进行完全重写。 当然,在升级时,我仍然需要能够提供新功能。 我应该使用什么策略对asp.net进行逐步平滑的更改? 我应该转换为单层.net解决方案,然后重构为适当的多层解决方案,还是现在应该设计业务和数据层? 我应该直接升级到3.5,还是仅仅升级到1.1并在升级后升级到2.0或3.5会更容易? 完全转换可能需要3-5个月。 还有一些现有的1.1代码,这就是为什么我考虑将其用作起点。 不要扔掉您的代码! 这是您可能会犯的最严重的错误(在大型代码库上)。查看您不应该做的事情,第1部分。 您已经为旧代码投入了很多精力,并解决了许多错误。扔掉它是一个经典的开发人员错误(而且我已经做过很多次了)。就像春季大扫除一样,它使您感觉"更好"。但是您无需购买新公寓和所有新家具即可为您的房屋配备家具。您可以一次在一个房间上工作...也许有些事情只需要一个新的绘画作业。因此,这就是重构的地方。 对于您的应用程序中的新功能,请用C#编写,然后从经典ASP中调用它。重写此新代码时,您将被迫模块化。如果有时间,也可以将部分旧代码重构为C#,并逐步解决这些错误。最终,您将用所有新代码替换您的应用程序。 您也可以编写自己的编译器。很久以前,我们为经典的ASP应用程序编写了一个,以便我们输出PHP。这就是Wasabi,我认为这就是Jeff Atwood认为Joel Spolsky摆脱摇滚的原因。实际上,也许我们应该将其装运,然后再使用即可。 它允许我们在下一版本中将整个代码库切换到.NET,而仅重写源代码的一小部分。这也使很多人称呼我们为疯,但是编写编译器并没有那么复杂,它给了我们很大的灵活性。 另外,如果这是内部唯一的应用程序,则将其保留。不要重写它-您是唯一的客户,如果需要以经典asp的身份运行它,则可以满足该要求。 作为一个长期的经典ASP程序员,现在是一个ASP.NET开发人员,我会花时间在2.0框架(如果需要/需要这些功能,则为3.5)中进行适当的架构。 我的上一份工作是,我们要重建的是很多非常糟糕的经典ASP应用程序," nuke and pave"方法是最成功的。使用现有的经典应用程序作为您的功能规格和线框,并以此为基础构建任务和技术规格。 试试这些链接 从ASP迁移 关键注意事项 将ASP转换为ASP.NET 从ASP到ASP.NET的迁移指南 完整的转换/重写需要多长时间?它还将取决于您如何构造原始项目。 我可以回答,您应该从一开始就定位v2.0(如果需要/需要,则为3.5)。无需使自己服从框架的1.1。 我也在努力从经典的ASP逐步过渡到ASP.NET。 我们的第一阶段是将一些常见的逻辑从ASP包含迁移到暴露给COM Interop的.NET程序集,以便经典ASP和ASP.NET都可以调用它们。 我使用ASPUnit编写了一些测试,以验证迁移到.NET程序集后的行为(具有更安全的重构优势)。 一旦核心逻辑进入.NET,我们就可以开始在ASP.NET中创建新页面,并按照自己的步调将各个ASP页面迁移到ASP.NET。 我建议在1.1上使用.NET 2.0或3.5。 ASP.NET MVC看起来是有吸引力的升级途径。 最简单的方法是先跳入头部。获取一些asp.net书籍并深入Visual Studio。做例子,玩弄它,为自己创造一些乐趣。您会边做边学。 我将避免进入.NET 1.1,因为Microsoft将于10/14/2008结束对.NET Framework v 1.1的支持。扩展支持将持续到2013年10月8日,但购买通常费用昂贵。任何错误或安全漏洞都将无法解决,这是您的问题。 http://support.microsoft.com/lifecycle/?LN=zh-CN&x=11&y=10&p1=1249 保罗 看一下Snitz论坛(www.snitz.com)-它们目前在ASP中,但是到ASP.NET的移植已接近完成。这两个代码库都可供您查看,因此您可能会了解它是如何完成的以帮助您。 您可能需要查看新的ASP.NET MVC框架。灵活性水平惊人,编码风格更类似于ASP经典方法,尽管教会与国家之间的分隔要好得多。 |