9

是否可以在使用Visual Studio 2010的ASP.NET MVC 3應用程序中編輯和繼續?如果是這樣,我該怎麼做?在ASP.NET MVC 3應用程序中編輯並繼續

順便說一句,我的操作系統平臺是x86。

編輯:當我按F5,然後嘗試編輯我收到以下錯誤代碼:不允許更改代碼運行,或者如果選項「打破所有進程當一個進程打破」被禁用。該選項可以在工具,選項,調試中啓用。

即使啓用該選項的代碼運行時我無法修改自己的代碼。

+0

你能更具體一點嗎? – 2011-05-29 15:44:29

+0

你有沒有試過自己?它工作,不是嗎?如果有什麼錯誤? – abatishchev 2011-05-29 15:44:58

+0

@ AD.Net,@abatishcev,我已經更新了我的問題 – Shaokan 2011-05-29 16:14:10

回答

14

經過大量搞亂,谷歌搜索的,和(基本)猜測工作,(我實際運行的x64環境),我發現下面啓用MVC 3編輯,並繼續對我太好了!

  1. 所有的項目設置爲86在配置管理器
  2. 設置我的Web應用程序項目輸出路徑,在屬性窗口中
  3. 「bin」的設置我的Web應用程序項目使用Visual Studio開發服務器 (項目屬性> Web選項卡)
  4. 以下從Pro ASP.NET MVC 3 Framework, Third Edition

現在2個簡單的指令,我可以設置一個斷點,然後按F5,然後休息時點擊次數 - 我可以更改我的代碼(例如在MVC Web應用程序引用的控制器或類庫項目中),然後繼續調試(再次調用F5),並且所做的更改都會被提取出來,並且所有內容似乎都應該如此!

+0

對於我來說,第二點做到了。但我不知道爲什麼輸出路徑必須是「bin」。 – 2012-04-11 07:34:52

+0

確實知道...當我寫它:)會檢查出來,看看是否不記得。 – MemeDeveloper 2012-04-12 11:45:50

+4

步驟4中的2條簡單指令是什麼? – zadam 2013-02-22 01:15:02

7

而且這一點,你會發現,編輯並繼續將不會對某些方法的工作 - 那些動態類型的變量和那些與lambda表達式。如果您使用LINQ來從存儲庫檢索數據(任何事情),那麼您可能會有很多lambda表達式,當然,ViewBag是MVC應用程序中的常見動態。

因此,編輯並繼續和MVC混合不佳。這是真的,因爲它讓你養成了測試驅動開發的習慣 - 編寫好的測試,編寫代碼來通過測試,然後才能編譯和運行。

+4

hmmm。我不參加TDD(順從非信徒查理,shuuun shunnn)。我是一個單人應用程序機器,而不是我的一杯茶。另外..「LINQ to(anything)」與MVC無關。 ViewBag指出,但是......個人而言,使用偉大的MVC模型和MVC的意義何在。如果你在(動態 - 讀取不是強類型的)ViewBag中毫無意義地拋出了大量的東西,那麼它就是淨模型綁定能力。寫(或更好地生成)視圖模型?沒有? – MemeDeveloper 2012-04-12 11:47:38

+1

@MemeDeveloper同上!當我從事私人和小型項目時,TDD浪費時間。無論如何,EnC在vNext中非常棒。 – Shimmy 2015-04-30 21:16:24