2009-04-04 41 views
177

Tôi đã mở một cửa sổ với trang web mà tôi đang gỡ lỗi. Tôi không cần VS để khởi động một cái khác cho tôi mỗi lần tôi cần gỡ lỗi.Dừng Visual Studio khi khởi chạy cửa sổ trình duyệt mới khi bắt đầu gỡ lỗi?

Có cách nào để ngăn chặn hành vi này không?

+0

Bạn đã duyệt web theo thẻ kích hoạt? .. Và bạn đang sử dụng trình duyệt IE? –

+0

Tôi đã có vấn đề ngược lại, nhưng câu trả lời chỉ là hữu ích –

Trả lời

262

Mở thuộc tính dự án khởi động của bạn (Project -> {} ProjectName Properties ... từ menu chính hoặc nhấn chuột phải dự án của bạn trong Solution Explorer và chọn Thuộc tính), sau đó điều hướng đến Web và dưới Bắt đầu hành động chọn Không mở trang. Chờ yêu cầu từ ứng dụng bên ngoài.

Bạn vẫn có thể sử dụng bất kỳ trình duyệt nào (hoặc Fiddler, bất kỳ thứ gì) để truy cập vào ứng dụng đang chạy, nhưng nó sẽ không tự động mở cửa sổ trình duyệt, nó sẽ bắt đầu ở chế độ nền và chờ bất kỳ yêu cầu nào.

+0

Điều đó có vẻ giống như một giải pháp thực sự tốt, nhưng cũng giống như giải pháp của Slace, nó không ngừng thực hiện tại điểm ngắt, nó nói không có biểu tượng nào được tải. Cảm ơn mặc dù. – sker

+6

. Tôi sử dụng nó để gỡ lỗi mọi lúc. Bạn phải có cấu hình sai. Kiểm tra kỹ xem bạn đã bật gỡ lỗi trong web.config chưa và bạn đang chạy bản dựng Gỡ lỗi chưa. –

+0

Vâng, ít nhất là đối với các dự án dịch vụ web, khi các điểm ngắt bắt đầu bị tấn công ngay khi khách hàng đầu tiên gọi một phương thức dịch vụ web. – andnil

10

Bạn có thể sử dụng chức năng Đính kèm với quy trình, thay vì nhấn F5.

Điều này cũng có thể cho phép bạn điều hướng qua các phần hoạt động đã biết mà không làm chậm trình gỡ lỗi VS được tải bên dưới.

+0

Tôi đã thử điều đó, nhưng nó sẽ không ngừng thực hiện khi nó tìm thấy điểm ngắt. Tôi cần nó để dừng lại ở điểm ngắt, có cách nào để kích hoạt nó không? Cảm ơn. – sker

+1

miễn là bạn đã đính kèm một quy trình đã nạp cùng một cụm chính xác nằm trong thư mục/bin/của ứng dụng, tất cả các điểm ngắt sẽ hoạt động (oh, và cung cấp tệp .pdb!) –

+0

Tôi đã tìm cách khắc phục nhưng có vẻ như rất nhiều rắc rối. Tôi không thể làm cho nó hoạt động được. Tôi sẽ sử dụng Tôi có giải pháp của Hat trong khi đó. Cảm ơn bạn. – sker

8

Khi bạn lần đầu tiên mở một dự án web/app, làm một Ctrl - F5, đó là các phím tắt để khởi động ứng dụng mà không gỡ lỗi. Sau đó, khi bạn nhấn F5 và khởi chạy trình gỡ rối, nó sẽ sử dụng phiên bản IE đó. Sau đó dừng lại và bắt đầu gỡ lỗi trong Visual Studio thay vì đóng IE.

Nó hoạt động trên máy của tôi. Tôi đang sử dụng máy chủ web được xây dựng trong dev. Không biết nếu điều đó tạo ra sự khác biệt.

Firefox cũng sẽ vẫn mở để bạn có thể gỡ lỗi trong cả hai hoặc cả hai cùng một lúc.

+0

Xin chào! Cảm ơn rất nhiều. Bây giờ tôi có thể tránh được khoảng 100 cửa sổ phụ cho mỗi phiên mã hóa. Ngoài ra, khi tôi nhấn F5 VS thay đổi kích thước cửa sổ IE của tôi. Bạn có biết làm thế nào tôi có thể tránh điều đó? – sker

+0

Xin lỗi sker, tôi không biết câu trả lời cho điều đó - nó không xảy ra cho tôi làm điều trên, mặc dù vậy, có lẽ có một câu trả lời ở đâu đó.Có lẽ IE đang nhớ kích thước cửa sổ của nó và nó không liên quan đến kịch bản gỡ lỗi? –

+0

Không hoạt động với tôi ... –

6

Dường như có một trường hợp trong đó không có trường hợp nào ở trên nhưng những điều sau sẽ hữu ích. Tôi đang phát triển một dự án cho nền tảng đám mây Windows Azure và tôi có một vai trò web. Có thực sự là một nút radio Không mở trang trong Dự án -> {Project name} các thuộc tính ... như đã được chỉ ra bởi Pawel Krakowiak, nhưng nó không có tác dụng trong trường hợp của tôi. Tuy nhiên, có dự án đám mây chính trong trình khám phá giải pháp và có thư mục Vai trò bên dưới. Nếu tôi nhấp chuột phải vào vai trò web của tôi trong thư mục này và chọn Thuộc tính, tôi sẽ nhận được một bộ cài đặt khác và trên tab Cấu hình có trình duyệt Khởi động cho cờ sau khi bỏ chọn nó. ứng dụng khởi động.

11

Trong một dự án ASP.Net 5 này bây giờ có thể được thiết lập cho mỗi hồ sơ khởi động.

Mở tệp launchsettings.json trong thư mục Startup Project Properties và thêm "launchBrowser": false đến cấu hình bạn đang cấu hình, chẳng hạn như trong:

"profiles": { 
    "IIS Express": { 
     "commandName": "IISExpress", 
     "launchBrowser": false, 
     "environmentVariables": { 
     "Hosting:Environment": "Development" 
     } 
    } 
} 
2

Tôi nhìn qua các câu trả lời và không thấy giải pháp tôi đã đề cập. Nếu có, xin lỗi tôi. Trong trường hợp của tôi, hiện đang sử dụng Visual Studio 2015. Trong trình khám phá giải pháp, nhấp chuột phải vào tệp Project và nhấp vào thuộc tính. Đi tới tab Debug và điều này sẽ có thông tin về cách bạn đang khởi chạy "IIS Express hoặc Web (DNX)" cho hai lần thả xuống đầu tiên, và sau đó sẽ có một hộp kiểm cho "Launch URL:". Bỏ chọn tùy chọn này và trình duyệt của bạn sẽ không tự động được khởi chạy mỗi lần bạn truy cập gỡ lỗi ứng dụng của mình. Mong rằng nó giúp ai đó thoát.

2

Cập nhật câu trả lời cho dự án .NET Core Web Api ...

Bỏ chọn hộp kiểm 'Trình duyệt khởi động' (được bật theo mặc định).

enter image description here

0

Trong khi có một số câu trả lời xuất sắc, dao động usual suspects-newer giải pháp, tôi muốn cung cấp thêm một đến cuộc cạnh tranh nhằm giải quyết những gì bạn nên làm khi bạn đang làm việc trên một giải pháp với nhiều dự án.

Trước khi tôi đến giải pháp này, tôi tiếp tục xem bindingInformation trong applicationhost.config của giải pháp, không mệt mỏi tìm kiếm bất kỳ gợi ý nào về việc tại sao mọi thứ không hoạt động.

Tắt, đơn giản điều mà tôi bỏ qua là các dự án khác nhau cũng có cài đặt riêng lẻ.

Vì vậy, bên cạnh Project > {Project-Name} Properties... > Web > Start Action trên Dự án phụ trợ của tôi, tôi cũng phải truy cập Website > Start Options... > Start Action trong Dự án Frontend của tôi. Khi đó, tôi đã chọn Don't open a page. Wait for a request from an external application và đã được hạnh phúc từ bao giờ!

Backend Settings Frontend Settings

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