Tôi đặt rất nhiều Debug.WriteLine trong mã của tôi cho mục đích gỡ lỗi. Khi tôi sẵn sàng xây dựng để phát hành, các Debug.Write có ảnh hưởng đến bản phát hành bản phát hành và chúng xuất sang đâu không?Trường hợp sẽ Debug.WriteLine trong C# đầu ra khi xây dựng phát hành?
Trả lời
Từ MSDN: "Thuộc tính ConditionalAttribute được áp dụng cho các phương pháp gỡ lỗi Trình biên dịch hỗ trợ ConditionalAttribute bỏ qua các cuộc gọi đến các phương pháp này trừ. 'DEBUG' được định nghĩa như một biểu tượng biên soạn có điều kiện Tham khảo tài liệu của một trình biên dịch để xác định xem ConditionalAttribute. được hỗ trợ và cú pháp để xác định một biểu tượng biên dịch có điều kiện. "
Vì vậy, nếu cấu hình phát hành của bạn không bao gồm biểu tượng DEBUG, cuộc gọi Debug.WriteLine sẽ bị bỏ qua trong quá trình biên dịch và sẽ không có đầu ra.
Nếu bạn định báo giá MSDN, tốt nhất bạn nên trích dẫn một URL. – Dan
Tôi tin rằng nó sẽ được biên soạn.
Debug.WriteLine
được chú thích với thuộc tính Conditional
. (xem MSDN)
Trình biên dịch không tạo mã đó trừ khi cờ DEBUG
được cung cấp.
Gỡ lỗi.Writeline không được biên dịch thành mã phát hành.
Nếu bạn chuyển đổi chúng thành Trace.WriteLine
, bạn có thể xác định trình nghe tùy ý trong tệp app/web.config.
+1 vì đây là cách thích hợp hơn để có đầu ra nội dung thông qua cấu hình. Mặc dù, nó yêu cầu cờ 'TRACE' được định nghĩa tại biên dịch * và * tất cả các thông điệp được biên dịch thành mã bất kể kiểu xây dựng. 'Debug.WriteLine' nên được sử dụng cho các thư bạn ** không muốn trong bản dựng Bản phát hành. –
- 1. Đặt thư mục đầu ra xây dựng trong Eclipse - C++
- 2. Erlang - trường hợp xây dựng
- 3. Q_ASSERT phát hành ngữ nghĩa xây dựng
- 4. Thứ tự của các nhà xây dựng gọi điện thoại trường hợp thừa kế trong C#
- 5. Đầu ra xây dựng tự động của Eclipse tương tác với đầu ra xây dựng dòng lệnh Maven
- 6. Khi nào Google sẽ phát hành ActionBarCompat?
- 7. Đầu ra SCON trong thư mục Xây dựng
- 8. Phát hành vs Gỡ lỗi Xây dựng Times
- 9. Các thư mục riêng biệt hoặc giống nhau cho đầu ra Gỡ lỗi/Phát hành khi sử dụng .NET (C#)?
- 10. Phát hành một tạo phẩm xây dựng trên github
- 11. Debug.WriteLine bỏ qua trong khi gỡ lỗi
- 12. Phát hành đàn trong trường hợp có lỗi?
- 13. Cách định dạng/thay đổi đầu ra xây dựng qmake
- 14. Làm thế nào để bạn xây dựng một debug .exe (MSVCRTD.lib) chống lại một phát hành xây dựng lib (MSVCRT.lib)?
- 15. SCons xây dựng tùy chỉnh - xây dựng với nhiều file và đầu ra một tập tin
- 16. Tôi có thể kết hợp nhà xây dựng trong C#
- 17. Gỡ lỗi XCode và xây dựng bản phát hành khi gỡ lỗi
- 18. Cách sạch nhất để thiết lập biến môi trường DYLD_FRAMEWORK_PATH cho bản xây dựng bản phát hành là gì?
- 19. Java có chế độ xây dựng 'Gỡ lỗi' và 'Phát hành' như C# không?
- 20. C# tại sao App.config được sao chép vào thư mục gỡ lỗi và phát hành sau khi xây dựng?
- 21. Làm thế nào để xây dựng nhánh phát hành dòng chảy git mới nhất trong Jenkins?
- 22. Giá trị float hoạt động khác nhau trên bản phát hành và gỡ lỗi xây dựng
- 23. Biên dịch mã để xây dựng bản phát hành trong D
- 24. TFS Xây dựng: bao gồm tên chi nhánh trong trường "số xây dựng" của các cụm
- 25. Trường hợp nào GHC xảy ra khi nhận dạng séc?
- 26. Nếu tôi xây dựng một hệ điều hành mới, loại tính năng nào sẽ có?
- 27. Khi VS 2010 RC sẽ được phát hành?
- 28. OSX/Bash - phát hiện lỗi xây dựng
- 29. Nhận trạng thái xây dựng trong tập lệnh sau khi xây dựng
- 30. Xây dựng bản phát hành trong Visual Studio Ctrl + F5 10x chậm hơn so với bên ngoài VS
Cảm ơn rất nhiều tất cả những người đã cung cấp câu trả lời. Tất cả đều đúng. Nhưng tôi chỉ có thể chọn một câu trả lời. upvoted phần còn lại. cảm ơn – toosensitive