2018年3月25日 星期日

將 ASP.NET MVC 5 原始碼加入現行專案中偵錯

環境:

Win7
Visual Studio 2017 Community
.NET Framework 已安裝好 4.5.2 以上版本

(因為相依性的關係,好像必需要裝 4.5.x 以上的 .NET Framework,未測試過,僅提供參考)

google 上搜尋 「asp.net mvc 5 github」 就可以找到 asp.net mvc 5 在 github 上的連結

要注意不要選到 asp.net core mvc 的那個

進入 github 後,github 頁面上應該顯示 README.md 的內容,內容上應該會說明各個 brance 和 tag 中包含的是那個版本的 mvc,和包含了那些其他的函式庫。



此次下載的是 tag 3.2.4 的版本


開一個新的方案

加入 asp.net mvc 原始碼的專案

    加入下面 5 個現有專案 ( 位置在asp.net mvc 原始碼包的 src 資料夾中 )

    System.Web.Mvc
    System.Web.Razor
    System.Web.WebPages
    System.Web.WebPages.Deployment
    System.Web.WebPages.Razor

加入一個新的 asp.net mvc 專案


進行以下調整

先確認 5 個 mvc 專案中的參考都是正常的,如果有參考有問題先處理
通常應該是重新加入參考或是從 nuget 裡解除安裝再重新安裝就可以了。

下面例子裡可以看到 Microsoft.Web.Infrastructure 參考有問題,處
理的方式就是從 nuget 裡重裝就行了


接下來將剛剛新增的 asp.net mvc 專案中的參考移除,準備用原始碼的專案取代

移除下面 5 個參考,再透過加入專案參考的方式加入



到這一步整個方案應該是可以正常編譯成功,但是 f5 啟動網站時會出現


右鍵屬性開啟剛剛加入的 5 個 asp.net mvc 原始碼的專案,在「簽署」的頁籤中,將「簽署組件」的項目取消掉,這 5 個專案都要做一次。


都取消簽署組件之後,將 System.Web.WebPages 中的 Properties 下的 AssemblyInfo.cs 打開


將 System.Web.Mvc 的 PublicKey 移掉


打開新增的 asp.net mvc 專案,在 Views \ Web.Config 裡面的 public key 移掉


接著應該就可以利用 F12 的方式去追踨 asp.net mvc 5 的原始碼了

沒有留言:

張貼留言