2010-05-28 25 views
12

Mặc dù Bật Chỉnh sửa và Tiếp tục được chọn trên tab Web của dự án ASP.Net MVC 2 của tôi, nhưng tôi không thể thay đổi mã nguồn khi đang chạy. Ví dụ, nếu tôi cố gắng chỉnh sửa một bộ điều khiển trong khi bị tạm dừng trong trình gỡ lỗi, tôi không thể thay đổi tệp (hoạt động như thể chỉ đọc).Chỉnh sửa và Tiếp tục không hoạt động trong VS 2010/ASP.Net MVC 2

Tôi tìm thấy một bài liên quan Edit and continue in ASP.NET web projects, tuy nhiên

  • Những câu trả lời dường như gợi ý tôi nên có thể ít nhất là chỉnh sửa mã, sau đó tải lại trang để xem kết quả.
  • Tôi không biết những gì khác biệt là giữa một ứng dụng web và trang web dự án
+0

Tôi đã trả lời câu hỏi tương tự trên SO http://stackoverflow.com/a/18772677/1027198 và hoạt động tốt. –

Trả lời

18

Sự khác biệt là một ứng dụng web cần phải được biên dịch trong khi một trang web được biên dịch tự động khi thực hiện (kể cả các mã phía sau).

Khi ASP.NET MVC sử dụng ứng dụng web mỗi khi bạn thực hiện thay đổi, bạn cần phải biên dịch lại và biên dịch lại yêu cầu rời khỏi chế độ Gỡ lỗi. Thật vậy, bạn có thể sửa đổi quan điểm và partials mà không cần biên dịch lại nhưng đối với logic điều khiển bạn luôn cần phải biên dịch lại.

Đẩy nhanh tiến độ điều lên tôi sẽ khuyên bạn như sau:

  1. Khi làm việc với quan điểm và partials (tức là làm một số công cụ thiết kế) chạy ứng dụng với Ctrl + F5 thay vì F5 mà sẽ chỉ cần khởi động ứng dụng ở chế độ bình thường và các thay đổi của bạn sẽ tự động được chọn khi bạn làm mới trình duyệt
  2. Khi làm việc với mã phía sau bạn sẽ có một bài kiểm tra đơn vị tương ứng cho phép bạn nhanh chóng kiểm tra hành vi r. Trong trường hợp này chạy trong chế độ gỡ lỗi có thể hữu ích hơn vì bạn có thể yêu cầu các giá trị kiểm tra.
+0

+1 @Darin, giải thích tốt. – griegs

0

Ngoài câu trả lời của @ Darin tôi phải nói rằng tôi không thích ý tưởng có thể thay đổi mã khi đang chạy.

Tôi nghĩ rằng chúng ta nên có kỷ luật đủ để viết một bài kiểm tra phản ánh kết quả mong đợi, viết mã và sau đó kiểm tra trực tiếp.

Có nói rằng mặc dù, cách tôi nhận được xung quanh đó là để bắt đầu ứng dụng trong một trình duyệt w/out chạy, thực hiện thay đổi của tôi, biên dịch và sau đó làm mới trình duyệt.

Tất nhiên sau đó tôi không có lợi ích của việc bước qua mã nhưng tôi có thể đính kèm vào quy trình công nhân bất cứ lúc nào tôi cần.

1

Với Mvc, bạn không thể chỉnh sửa và tiếp tục. Nhưng nếu bạn chạy dự án bằng IISExpress, thì không cần chạy dự án ở chế độ gỡ lỗi, bạn có thể chỉnh sửa codebehind, xây dựng lại dự án. Và sau đó làm mới các trang trong trình duyệt sẽ hoạt động.

0

Nâng cấp lên VS2012. Điều này hỗ trợ chỉnh sửa và tiếp tục cho các dự án ASP.Net (từ tab Web trong cửa sổ thuộc tính dự án). Mặc dù nó dường như không được kích hoạt theo mặc định!

Các vấn đề liên quan