已发布到GoDaddy的ASP.NET旧项目丢失本地源码,如何复用代码正常运行?
恢复可运行ASP.NET项目的操作步骤
首先先确认你从GoDaddy下载的站点文件类型,分两种场景处理:
场景A:下载文件包含后端源码(*.aspx.cs/*.vb)、项目文件(*.csproj/*.vbproj)
你之前操作失败的核心原因是错误选择了「基于现有代码创建控制台应用」的路径,按以下步骤操作即可:
- 打开VS2019,直接选择「打开 > 项目/解决方案」,选中站点根目录下的
*.csproj/*.vbproj文件加载,不要手动创建新项目 - 如果找不到项目文件,选择「打开 > 网站」,直接选中站点根文件夹,VS会自动识别为ASP.NET站点项目
- 右键项目进入「属性 > Web」页,确认服务器配置为「IIS Express」,启动操作匹配原有项目的起始页配置,保存后直接启动即可
场景B:下载文件为预编译版本(仅存在*.aspx、bin目录下的*.dll,无后端源码与项目文件)
这种情况需要先反编译获取业务代码再重建项目:
- 用反编译工具打开
bin目录下的项目主dll(通常和原项目同名),导出所有后端代码到本地目录 - 新建空白ASP.NET Web应用项目,必须选择和原项目完全一致的.NET Framework版本,版本不匹配会触发大量引用报错
- 将站点下载的所有静态资源、
aspx/ascx页面、web.config、bin目录下的第三方依赖dll复制到新项目对应路径,再把反编译得到的后端代码按原有目录结构导入新项目 - 打开「管理NuGet包」界面,根据
web.config中的程序集版本信息还原所有第三方依赖,解决所有编译错误 - 编译通过后直接启动调试即可,后续迭代可直接在该项目上进行,业务逻辑与原有旧项目完全一致
内容的提问来源于stack exchange,提问作者Arkady Karasin
相关产品推荐
相关产品推荐

