ป้องกันแอป Console (. NET Core) จากการพิมพ์“ exited with code 0” ใน VS2019


9

เมื่อฉันเริ่มต้นแอปคอนโซล (. NET Core) ด้วย Ctrl + F5 (เริ่มต้นโดยไม่มีการดีบัก) ใน Visual Studio Community 2019 (เวอร์ชัน 16.3.1) ข้อความต่อไปนี้จะถูกต่อท้ายในหน้าต่างคอนโซลที่ส่วนท้าย:

C: \ HelloWorld \ bin \ Debug \ netcoreapp3.0 \ HelloWorld.exe (กระบวนการ 1672) ออกด้วยรหัส 0

using System;

namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

เอาต์พุตคอนโซล

มีวิธีใดในการป้องกันไม่ให้ Visual Studio 2019 พิมพ์ข้อความนี้ ฉันพยายามแก้ไขปัญหาจากการป้องกันข้อความที่คล้ายกันไม่ให้ปรากฏในหน้าต่างผลลัพธ์โดยการเปลี่ยนตัวเลือก: เครื่องมือ> ตัวเลือก> การดีบัก> หน้าต่างผลลัพธ์> ข้อความออกกระบวนการ = ปิด แต่ไม่มีผลในหน้าต่างคอนโซล

ตัวเลือก Visual Studio

หมายเหตุ: ข้อความนี้ไม่แสดงใน Visual Studio 2017 จะแสดงเฉพาะใน Visual Studio 2019 และเฉพาะบน. NET Core apps


มันคือจิตวิญญาณของชุมชน อย่างไรก็ตามนี่อาจเป็นข้อผิดพลาด
Michael Randall

1
หากคุณแน่ใจว่าสิ่งนี้เกิดขึ้นแม้ในอินสแตนซ์ที่ติดตั้งใหม่ของ Visual Studio 2019 ฉันจะสร้างปัญหาบนฟอรัม คุณสามารถทำได้โดยการกดปุ่มHelp > Send Feedback > Report a Problem
ยี่สิบ

1
@ ยี่สิบฉันปรับปรุง Visual Studio ด้วยรุ่นล่าสุดไม่กี่วันที่ผ่านมา ฉันจำไม่ได้ว่ามันเหมือนเดิมก่อนการอัพเดทหรือไม่เพราะฉันทำงานกับ VS 2017 ฉันไม่แน่ใจว่ามันเป็นปัญหาหรือฟีเจอร์ มันอาจจะกำหนดค่าได้ที่ไหนสักแห่งในตัวเลือก
Theodor Zoulias

เหตุใดจึงเป็นปัญหา Ctrl-F5 ใช้สำหรับการทดสอบ (และการรู้รหัสทางออกเป็นข้อเสนอแนะที่เป็นประโยชน์เมื่อมีความสำคัญ) การใช้แอปคอนโซลจริง ๆ จะไม่เกิดขึ้นภายใน VS
ริชาร์ด

3
สำหรับ VS2019 นี่คือฟีเจอร์ไม่ใช่ข้อบกพร่อง มันอยู่ที่ร้องเรียน 28 ปีจากโปรแกรมเมอร์ที่เขียนแอปโหมดคอนโซลขนาดเล็กพวกเขามักจะลืมที่จะเพิ่มรหัส "กดปุ่มใด ๆ เพื่อดำเนินการต่อ" หรือการตั้งค่าเบรกพอยต์ในตอนท้ายของหลัก ดังนั้นพวกเขาจึงไม่สามารถอ่านผลลัพธ์ของโปรแกรมคำถามมากมายเกี่ยวกับ SO และฟอรัม ใน VS2019 หน้าต่างคอนโซลจะไม่ปิดอีกต่อไป และรายงานตามหน้าที่ว่าโปรแกรมสิ้นสุดลง นี่คือคุณสมบัติการดีบักแบบบริสุทธิ์คุณจะไม่เห็นสิ่งนี้เมื่อคุณเรียกใช้โปรแกรมตามปกติ
Hans Passant

คำตอบ:


5

คุณสามารถปิดการใช้งานได้โดยTools > Options > Debugging > General > Automatically close the console when debugging stopsเลือกตัวเลือก:

Visual Studio 2019 ตัวเลือก

ตามที่ระบุไว้โดยคอนโซลตัวเอง (Visual Studio 2019 v16.3.2):

แอปคอนโซล

สิ่งนี้จะทำให้คอนโซลพิมพ์Press any key to continue...โดยเริ่มต้นโดยไม่มีการดีบั๊ก ( CTRL+ F5) และไม่ใช่รหัสออก (ยังคงเปิดคอนโซลอยู่):

ไม่มีรหัสการออก


Ahhh! นีซหาอีวาน! ขอบคุณมาก! 😃
Theodor Zoulias
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.