ฉันจะป้องกัน Visual Studio 2013 จากการปิดแอพ IIS Express ของฉันได้อย่างไรเมื่อฉันสิ้นสุดการดีบัก


187

ก่อนหน้านี้ในปี 2012 ถ้าฉันดีบั๊กใน Chrome (ตัวอย่าง) จากนั้นหยุดการดีบั๊กเว็บไซต์จะยังคงทำงานใน IIS Express ดูเหมือนจะไม่เป็นเช่นนี้ในปี 2013 อีกต่อไป

นี่เป็นการเปลี่ยนแปลงใหม่ที่ฉันต้องทำหรือไม่? ฉันจะทำให้อินสแตนซ์ของเว็บไซต์ทำงานต่อไปได้หลังจากที่ฉันหยุดการดีบักเกอร์ได้อย่างไร ขอบคุณ

คำตอบ:


308

การปิดคุณสมบัติ "เปิดใช้งานแก้ไขและดำเนินการต่อ" ใหม่ได้แก้ไขให้ฉัน

  1. เปิดกล่องโต้ตอบตัวเลือก (เครื่องมือ | ตัวเลือก)
  2. ค้นหา "Debugging \ Edit and Continue"
  3. ยกเลิกการเลือก "เปิดใช้งานการแก้ไขและดำเนินการต่อ"

อัปเดต 1 :
คุณยังสามารถปิดได้ตามแต่ละโครงการ

  1. เปิดคุณสมบัติสำหรับโครงการเว็บ
  2. เลือกแท็บเว็บ
  3. ยกเลิกการทำเครื่องหมาย "เปิดใช้งานการแก้ไขและดำเนินการต่อ" ในส่วน "ดีบั๊ก"

อัปเดต 2 : บทความบล็อกที่กล่าวถึงคุณสมบัตินี้

ตัวเลือกการดีบัก "เปิดใช้งานแก้ไขและดำเนินการต่อ" จะเปิดใช้งานตามค่าเริ่มต้นสำหรับเว็บแอปพลิเคชันใหม่ในการแสดงตัวอย่าง VS2013


4
แต่ถ้าคุณปิดการใช้งานแก้ไขและดำเนินการต่อคุณจะไม่สามารถแก้ไขรหัสในขณะที่การดีบั๊ก!
Josh M.

3
แก้ไขและดำเนินการต่อหรือไม่ ใช่มันเป็นการประหยัดเวลาครั้งใหญ่ หากคุณไม่ได้ใช้การแก้ไขและดำเนินการต่อแสดงว่าคุณทำผิด ;-)
Josh M.

แก้ไขและดำเนินการต่อมีประโยชน์เมื่อทำการดีบักและทดสอบโครงการเว็บ ไฟล์ * .aspx นั้นสามารถแก้ไขได้เบราว์เซอร์จะรีเฟรชและการเปลี่ยนแปลงจะปรากฏขึ้น มันไม่มีประโยชน์สำหรับโค้ดที่ไม่ใช่เว็บ ...
Zarepheth

ดังนั้นถ้าคุณมีตรรกะของคุณในไฟล์อื่นหรือแม้กระทั่งในห้องสมุดอื่นมันไร้ประโยชน์?
Adam Heeg

หากคุณต้องการแก้ไขและดำเนินการต่อในโครงการเว็บที่คุณทำผิด คุณไม่ควรทำการทดสอบรหัสของคุณด้วยการดีบัก คุณควรมีแบบทดสอบง่ายกว่าที่จะเริ่มและหยุด! :)
JRadness

21

วิธีที่ง่ายกว่า:

จากDebugเมนูเลือกStart Without DebuggingหรือCtrl+F5เพื่อเรียกใช้โครงการก็จะยังคงทำงานในโครงการของคุณจนกว่าคุณจะเลิกIIS


11

ฉันไม่มี "เปิดใช้งานแก้ไขและดำเนินการต่อ" ในคุณสมบัติของโครงการเว็บ (VS2015 Community Update 2) แต่ในที่สุดฉันก็พบความคิดเห็นที่เป็นประโยชน์ในลิงก์นี้ซึ่งกล่าวถึงในคำตอบของ Rick :

คริสเตียน: คุณไม่จำเป็นต้องปิดตัวเลือกสำหรับ IIS express เพื่อให้ทำงานต่อไป สิ่งที่คุณต้องทำคือแทนที่จะหยุดแอปพลิเคชันของคุณแยกกระบวนการทั้งหมด หากคุณไปที่: เครื่องมือ> ปรับแต่ง> คลิกที่แท็บคำสั่ง จากนั้นเลือกปุ่มตัวเลือกของแถบเครื่องมือและบนเมนูแบบเลื่อนลงถัดจาก debug ที่เลือกนี้ จากนั้นคุณต้องการ "เพิ่มคำสั่ง ... " บนหน้าต่างคำสั่งเพิ่มเลือก debug และเลื่อนลงไปและคลิกที่ "แยกทั้งหมด" คลิกตกลงแล้วปิด คุณจะเห็นกากบาทสีแดงติดกับเมนูการดีบักของคุณ เมื่อคุณคลิกที่นี่หลังจากการดีบักแอปพลิเคชันของคุณ IIS Express จะยังคงทำงานต่อไป

สั้น ๆ :
การตั้งค่าแยกการดีบักเกอร์ทั้งหมดสำหรับ vs2015


ไม่มีการแยกออกทั้งหมดใน VS 2558 Enterprise Update 2
Mikee

@Mikee "Detach All" จะปรากฏเฉพาะในเมนูดีบั๊กเมื่อคุณอยู่ในโหมดดีบั๊กแล้ว Add Command.. > Debug > Detach Allนอกจากนี้คุณยังสามารถเพิ่มคำสั่งผ่านทาง
Dai

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