มีสองวิธีในการเพิ่มประโยชน์ของการดีบักข้อมูลแทนที่จะเห็น{MyNamespace.MyProject.MyClass}ในดีบักเกอร์
นี่คือการใช้DebuggerDisplayAttributeและToString()วิธีการ
using System.Diagnostics;
...
[DebuggerDisplay("Name = {Name}")]
public class Person
{
public string Name;
}
หรือ
public class Person
{
public string Name;
public override string ToString()
{
return string.Format("Name = {0}", Name);
}
}
มีเหตุผลใดที่จะชอบอีกฝ่ายหนึ่ง? มีเหตุผลใดที่จะไม่ทำทั้งสองอย่าง? เป็นความชอบส่วนตัวล้วนๆ?
ToStringมักใช้เป็น "default display string" เช่น byConsole.WriteLineหรือ WPF data binding