วิธีการกำหนดค่าสำหรับแอปพลิเคชัน c # อย่างง่าย (การบันทึกเหตุการณ์)

ฉันมีแอปพลิเคชันบันทึก c# ง่ายๆ ที่เขียนไฟล์บันทึกแล้วอัปโหลดไปยัง "เซิร์ฟเวอร์" ผ่าน HTTP-POST หรือตามโฟลเดอร์แชร์ของ Windows

แนวทางใดที่ "ถูกต้อง" ในการกำหนดค่าแอปพลิเคชันเพื่อให้มีสองเวอร์ชันโดยแต่ละเวอร์ชันใช้วิธีการอัปโหลดที่แตกต่างกัน

ฉันควรตั้งค่าพารามิเตอร์ใน app.config หรือฉันควรคอมไพล์ 2 ไบนารี่?


person Cilvic    schedule 06.02.2011    source แหล่งที่มา
comment
คำถามคืออะไร??...สองเวอร์ชันอะไรอัปโหลดอะไร.. โปรดให้ข้อมูลเพิ่มเติม...   -  person Shekhar_Pro    schedule 06.02.2011


คำตอบ (2)


ทำให้แอปของคุณอ่านไฟล์การกำหนดค่าขณะรันไทม์ (app.config, ไฟล์ xml ที่กำหนดเอง) และตัดสินใจว่าจะทำอย่างไรตามนั้น ดีกว่าการรวบรวมแอปเดียวกันหลายๆ เวอร์ชัน

นอกจากนี้ โปรดดู NLog เพื่อดูโซลูชันการบันทึกที่สมบูรณ์ยิ่งขึ้น NLog ใช้ ไฟล์ xml ที่อ่านขณะรันไทม์ อนุญาตให้บันทึกข้อความบันทึกทั้งหมดลงในไฟล์ (หรือหลายไฟล์ตามระดับข้อผิดพลาด) ไปยังคอนโซลหรือละเว้นข้อผิดพลาดบางอย่าง ความยืดหยุ่นเป็นสิ่งที่ดี คุณไม่จำเป็นต้องมีความหรูหราเสมอไปในการคอมไพล์แอปใหม่โดยมีการเปลี่ยนแปลงเพียงเล็กน้อยเท่านั้น

person alex    schedule 06.02.2011
comment
ขอบคุณ ฉันควรเพิ่มความแตกต่างของพารามิเตอร์ให้กับ app.config ในโปรแกรมติดตั้งอื่นหรือไม่ - person Cilvic; 06.02.2011
comment
@Cilvic ใช่นั่นจะง่ายกว่า โซลูชันนี้ยังช่วยให้คุณเปลี่ยนการกำหนดค่าได้แม้จะปรับใช้แอปของคุณแล้วก็ตาม - person alex; 06.02.2011

มันขึ้นอยู่กับโปรเจ็กต์ที่ใช้แอปพลิเคชันบันทึกของคุณ

หากคุณใช้มันในโปรเจ็กต์อื่น ๆ มากมายแล้วและไม่สามารถรีแฟคเตอร์ได้ การประกอบแบบแยกส่วนอาจเป็นแนวทาง หากคุณเริ่มต้นใหม่ ควรทำตามการกำหนดค่าอย่างแน่นอน เมื่อฉันเข้าใจว่าคุณแก้ไขแล้ว คุณกำลังพูดถึงประเภท differentnet Logger

โดยทั่วไป ฉันขอแนะนำไม่ให้คุณเขียนแอปพลิเคชันบันทึกของคุณเอง ใช้อันที่มีอยู่ มีอันที่ดีจริงๆ ออกมา (NLog, log4net, การบันทึก EnterpriseLibrary) คุณคงไม่อยากให้มีจุดบกพร่องในเฟรมเวิร์กการบันทึก ดังนั้นให้ใช้สิ่งที่ผ่านการทดสอบแล้วว่าประสบความสำเร็จในโปรเจ็กต์นับล้านและมีเสถียรภาพ

หากคุณต้องการ Logger ที่แตกต่างกัน คุณสามารถขยายเฟรมเวิร์กเหล่านี้ได้

person Martin Buberl    schedule 06.02.2011