Serilog ที่ส่งออกไปยังคอนโซล (ด้วยข้อมูล ToString ()) และ seq (พร้อมข้อมูลที่มีโครงสร้าง)
ฉันส่งออกข้อมูลที่บันทึกไว้ไปยังทั้งสองConsole
และSeq
ซิงก์ ใช้งานได้ดี
เมื่อฉันเข้าสู่ระบบ POCO เพื่อ:
Console
อ่าง, มันบรรทัดข้อความยาวกับคุณสมบัติและข้อมูล- ที่จะ
Seq
จมมันมีโครงสร้างที่ดีดังนั้นจึงง่ายต่อการค้นหา / กรอง / ฯลฯ
ตอนนี้มีวิธีหรือไม่ที่เมื่อเราส่งออกค่าไปยังอ่างล้างจานคอนโซลมันอาจใช้วิธี ToString () ของ POCO (แทนที่จะเป็น -all- คุณสมบัติ) ในขณะที่ Seq มันคืออะไรกันแน่ตอนนี้?
ตอนนี้ฉันกำลังทดลองอยู่ - บางคลาสไม่มี ToString () ซึ่งหมายความว่าฉันจะได้รับชื่อคลาสที่นั่น
เป็นไปได้หรือไม่
คำตอบ
Serilog จับแต่ละคุณสมบัติของเหตุการณ์เพียงครั้งเดียวและเมื่อถึงจุดนั้นจะเลือกการแสดงอย่างใดอย่างหนึ่งToString()
หรือแบบมีโครงสร้าง
มันเป็นเพียงต่อมาในท่อเข้าสู่ระบบว่าเหตุการณ์เช่นอ่างล้างมือถึงConsole
และSeq
เพื่อให้มีวิธีการที่อ่างล้างจานของแต่ละบุคคล (หรือการกำหนดค่าสำหรับอ่างล้างจาน) ที่มีอิทธิพลต่อวิธีการที่มูลค่าทรัพย์สินโดยเฉพาะอย่างยิ่งถูกจับ