我已经通过Visual Studio将我的ASP.NET网站发布到我的Windows Server 2012。
但事情发生了,我丢失了所有来源。我有一个备份,但它不够新。我可以重新编写所有遗漏的内容,但我不记得所有内容。
我想知道是否有可能从我发布网站的服务器获取源代码?我可以完全访问它。
谢谢,
Hellcat8
答案 0 :(得分:5)
很抱歉听到这个!
ASP.NET(WebForms)应用程序由代码隐藏类和.aspx页面组成。所有代码隐藏类都被编译到位于根目录中bin文件夹中的类库中
ASP.NET(MVC)应用程序具有类似的结构,但使用视图而不是.cshtml / .vbhtml扩展名。
如果丢失了应用程序的后端代码,则需要反编译dll文件以获取代码。可悲的是,你将丢失所有代码注释,因此需要重新创建它们。
一些反编译器:dotPeek,ILSpy,JustDecompile,Reflector
答案 1 :(得分:2)
我认为如果您没有存储库或类似的东西,但只有DLL,您可以尝试使用反向工程工具......如:
var result = categoryLookup.SelectMany(
c => questions.Where(q => q.CategoryId == c.CategoryId)
.OrderBy(x => Guid.NewGuid())
.Take(c.RequiredAmount)
);