5
มันตกลงสำหรับฟังก์ชั่นในการปรับเปลี่ยนพารามิเตอร์
เรามีชั้นข้อมูลที่ล้อมรอบ Linq กับ SQL ในชุดข้อมูลนี้เรามีวิธีนี้ (แบบง่าย) int InsertReport(Report report) { db.Reports.InsertOnSubmit(report); db.SubmitChanges(); return report.ID; } เมื่อส่งการเปลี่ยนแปลงรหัสรายงานจะได้รับการอัปเดตด้วยค่าในฐานข้อมูลที่เราส่งคืน จากด้านการโทรดูเหมือนว่านี้ (ย่อ) var report = new Report(); DataLayer.InsertReport(report); // Do something with report.ID เมื่อดูที่รหัส ID ได้รับการตั้งค่าภายในฟังก์ชั่น InsertReport ว่าเป็นผลข้างเคียงจากนั้นเราจะเพิกเฉยต่อค่าที่ส่งคืน คำถามของฉันคือฉันควรพึ่งพาผลข้างเคียงและทำสิ่งนี้แทน void InsertReport(Report report) { db.Reports.InsertOnSubmit(report); db.SubmitChanges(); } หรือเราควรป้องกันมัน int InsertReport(Report report) { var newReport = …