2011-09-14 106 views
2

我是一名真正的ASP.NET Web開發新手,擁有Java背景。一位朋友在IIS上運行ASP.NET 3.0部署。他找不到在Visual Studio 2008中創建的原始項目文件,並要求我幫助他。從IIS部署中恢復ASP.NET項目

是否有可能從IIS上的部署重新創建項目?我在inetpub [domain] \ httpdocs目錄中看到很多ASPX和CS文件。

我沒有看到.SLN文件。我想這就是他需要的。重建會是一件真正的麻煩事嗎?是否有任何資產或源文件不會部署到ISS,我需要重新創建?

感謝

+0

我想知道爲什麼大家都在討論Reflector的答案,儘管@awbranch已經說過他有CS文件?當然,可能有一些DLLS被引用,其中沒有CS文件,但是通常應用程序源代碼應該在CS文件內。 – Icarus

回答

3

如果它是編譯的Web應用程序項目,代碼將位於bin文件夾中的已編譯程序集中。這可以使用.NET反射器進行反編譯。源代碼將可讀,但不是原來的。

如果這是一個網站項目,你很幸運。代碼文件將位於網站結構中(* .aspx.cs或* .aspx.vb)。這些將構成您在Visual Studio中重新創建網站所需的幾乎所有資產。創建一個項目和解決方案文件以在VS中管理這些文件將是輕而易舉的事情。

+0

是的,我看到所有的.aspx.cs文件。所以看起來他很好。感謝您及時的回覆。 – awinbra

+0

太棒了!只需製作一個空白的解決方案,然後點擊Project - > Add Existing Item,您就可以將所有文件添加到新的解決方案中。 – CheckRaise

5

重新創建soloution /項目文件是(潛在的)經濟復甦的一小部分。您是否在Web服務器上看到任何.aspx.cs或.aspx.vb文件?如果沒有,則需要從網站的/ bin文件夾中的DDL中爲每個.aspx文件的代碼中提取代碼。你可以用reflector相當容易地逆向工程任何.Net代碼,但是所有的註釋都會丟失。

+0

謝謝我擁有它們。 – awinbra

4

如果您擁有aspxcs文件,那麼您就需要做的是:只需在Visual Studio中創建一個新的Web項目,然後選擇「添加現有文件」。然後,您將只選擇所有aspx頁面,並且cs文件應該會自動導入。

很明顯,任何事情,你可能會有一些引用缺失,什麼不是,但不應該是非常痛苦的解決所有這些問題。

+0

謝謝我擁有它們。 – awinbra