Category dotnet

[C#] Decimal? vs Decimal ต่างกันอย่างไร

C# Logo

หลายคนอาจจะงงนะครับว่าทำไมใน C# Version ใหม่ๆ (จริงๆ ไม่น่าจะใหม่นะ เพราะมีมาพอสมควรและ) เราเจอ Code แนวๆนี้ ถ้าสังเกตุจาก Code ตัวอย่างดีพบว่าที่ DataType มันมีเครื่องหมายคำถามเติมเข้ามา ตรงนี้ไม่ต้องสงสัยอะไรนะครับ การที่มี ? เพิ่มเข้ามาเป็นการบอก Datatype ที่เราประกาศนั้นเป็น Nullable Types สามารถเก็บค่า null ได้ครับ โดยสามารถอ่านข้อมูลเพิ่มเติมได้ ดังนี้ครับ Reference Nullable Types

AT Service Protocol Error Code 8 (Interactive Process)

Microsoft Windows

บางครั้งเราอาจจะมีระบบงานเก่าที่ใช้ “AT Service Protocol” พอย้ายมาระบบใหม้เวลาทำงานเจอ Error Message แนวนี้ Error Code 8 (Interactive Process) ครับ สาเหตุ การแก้ไข สุดท้ายนี้ ถ้าใครจะทำระบบงานใหม่ๆที่ต้องมี Schedule แนะนำให้ใช้ตัวนี้ครับ Task Scheduler Managed Wrapper ซึ่งเป็น Third Party ที่ช่วยจัดการเรื่องนี้ครับ ใช้งานได้ง่าย สำหรับผมใช้ทำ App ในการดึงข้อมูลจาก ThaiBMA เพื่อแปลง Format และให้ระบบอื่น Feed ข้อมูลเข้าระบบครับ แต่ถ้าอยากลองไปไล่ Library ของ…

[C#] รวมลิงค์ E-BOOK ที่แจกจากเว็บ c-sharpcorner.com

ช่วงปีใหม่ ผมได้ไปเจอลิงค์ที่เว็บ c-sharpcorner.com มีการแจก E-Book ดีๆหลายเล่มครับ ผมจึงนำแบ่งปันเพื่อนทุกคนครับ  ตามลิงค์ ดังนี้ เลย (ต้องสมัครสมาชิกก่อน และ Load ได้วันละเล่มครับ) โดย E-Book ที่ผมสนใจมี ดังนี้ Learning WCF: Practical Implementation Essential WCF Practical Implementation Introduction to Mongo DB Programming Errors & Solutions Guide to Microsoft Enterprise Library LINQ Quick…

[C#] คำแนะนำสำหรับการพัฒนา App แบบ Console เพื่อทำงานเป็น Batch ผ่าน Schedule Task

วันนี้มาเขียน Blog ดึกไปหน่อย ถือว่าฉลองเดือนธันวาคมที่แสนอบอุ่นและกัน 555 มาเข้าเรื่องกัน โดยหลายๆครั้งที่เราต้องพัฒนา Console App เพื่อทำงานในลักษณะที่เป็น Background Process ถ้าเป็นการเรียกใช้งานผ่านตัว User หรือ Application อื่นๆ อย่าง Winform โดยตรงมันก็ไม่มีปัญหาอะไรนัก แต่ถ้าเป็นการเรียกใช้ผ่าน Task Schedule หละ ? ปัญหาของผม คือ ว่า เราจะทำให้ตัว Task Schedule(หรืออาจจะเป็น App อื่นที่เรียกใช้ใน Batch) รู้ได้อย่างไรว่า Exe ที่เรียกใข้งาน มันทำงานเสร็จแล้ว ? ในตอนแรก…

[C#] สรุปข้อดี-ข้อเสียในการอ่านกับเขียน Excel จากวิธีต่างๆ

พอดีช่วงนี้มีงานที่ให้ดึงไฟล์จากเว็บมา และเรามาจัดแต่งรูปแบบไฟล์ Excel นั้น เพื่อ Import เข้าระบบครับ โดยผมได้ทดลองศึกษามา และขอเปรียบเทียบข้อดีข้อเสียไว้ เผื่อมีคนอื่นมาใช้งานครับ แนวทางที่ 1: การใช้ OLEDB จุดเด่น ทำงานได้รวดเร็ว ไม่จำเป็นต้องติดตั้ง Microsoft Office ลงที่เครื่อง Data Type ของแต่ละ Column ระบบจะมองเป็นจากแนวแรกที่อ่าน (อารมณ์เดียวกับการใช้ตารางครับ) จุดด้อย การอ่านข้อมูลเฉพาะตามเงื่อนไข หรือ Pattern ที่กำหนดนั้นทำได้ยาก การแก้ไขไฟล์ Excel นั้นทำได้ยาก แนวทางที่ 2: การใช้ Excel Interop Object…

[PowerShell] Convert Unicode Text or SQL File To ASCII

powershell

สำหรับที่มาของ Script ชุดนี้นี่ทำ Team วุ่นวายเลย เรื่องก็มีอยู่ว่าเวลาพัฒนาระบบต่างๆมันมีในส่วนของ Source Code และ SQL Script ซึ่งต้องนำไป Run ใน Enviromemt ของ Test, Dev หรือ Production ก็ตาม แต่เพราะความสะเพร่าของผมเองที่ Save File Script เป็นแบบ Unicode เกิดปัญหาขึ้นเมื่อนำไป Run บน Database Server DB2 บนเครือง AIX จะเกิด Error Message ดังนี้ Error…

[PowerShell] Integrated PowerShell with C# Application

powershell

มาต่อบทความการใช้ C# กับ PowerShell สักที หลังจากไปลองสร้าง Winform Application จาก PowerShell เพียวๆกันแล้ว โดยคราวนี้ เราใช้โจทย์ของคราวที่แล้วแหละ โดยมีการออกแบบหน้าจอ ดังรูป จัดการ Add Code Event ต่างๆให้เรียบร้อย (อันนี้ผมใช้ Pattern MVP นะครับ เผื่อคนโหลดไปแกะ Code)จากนั้น เราต้องทำให้ C# รู้จักกับ PowerShell กันก่อน โดยการ Add Reference DLL เข้ามาใน Project ครับ โดยเราจะ Add DLL…

[PowerShell] Create Winform by PowerShell

หลังจากที่ได้ลองเล่น Powershell มาสักพักแล้ว ผมมี idea ขึ้นมา เนื่องจาก Workshop ที่แล้ว ผมได้ทำบน Console ซึ่งอาจจะไม่สะดวกมากนั้น คราวนี้ผมลองสร้างเป็น Winform เล็กๆขึ้นมาแทนครับ(จริงๆ กะลองกับ C# ก่อน แต่มาเจอการใช้ประยุกต์ใช้งานแบบนี้ เลยลองมาเล่นก่อน 555) มาถึงตรงนี้หลายๆคนอาจะมีคำถาม ผมเลยทำ Q/A สรุปได้เลยครับ Q: Power Shell มีความสามารถในการสร้าง Winform ด้วยเหรอ ?A: มีครับ เนื่องจากตัว PowerShell เองมีพื้นฐานมาจาก .Net Framework ทำให้สามารถเรียกใช้ library…

[PowerShell] Getting File by File Version

powershell

จากบทความที่แล้ว ที่ได้เกริ่นสาเหตุของปัญหาไปแล้ว ว่ามี Program หลากหลายเวอร์ชั่นมากในการทดสอบ วันนี้ผมเลยได้ลองเขียน Code ในการหาไฟล์ .exe, ocx, dll ในโพลเดอร์ที่เก็บ Program ทั้งหมด ตาม Version ของลูกค้า และ ชื่อไฟล์ที่ต้องการทดสอบครับ โดย Code คร่าวออกมาเป็นประมาณนี้ครับ ผลลัพธ์ที่ได้ (ขอปิดชื่อไฟล์นิดนึง งานบริษัทและ)และสุดท้าย คือ แก้พวกค่า Path หรือเงื่อนไขต่างๆ ให้รับข้อมูลจากผู้ใช้เองเลย จะได้ไม่ต้องมาแก้ Code บ่อยๆครับ ดังนี้ ต่อไปจะเป็นการลองใช้ Code ชุดนี้ ไปประยุกต์กับ C# ทำ…