Thursday, August 02, 2007

Introducing Service-Oriented Architecture



Service-Oriented Architecture ( SOA ) represents a new and evolving model for building distributed applications. Services are distributed components that provide well-defined interface that process and deliver XML messages. A service-based approach makes sense for building solutions that cross organizational, departmental, and corporate domain boundaries. A business with multiple systems and applications on different platforms can use SOA to build a loosely coupled integration solution that implements unified workflows .

Overview of Service-Oriented Architecture


     The concept of services is familiar to anyone who shops online at an e-commerce web site. Once you place your order, you have to supply your credit card information, which is typically authorized and charged by an outside service vendor. Once the order has been committed, the e-commerce company coordinates with a shipping service vendor to deliver your purchase. E-commerce applications provide a perfect illustration of the need for an SOA. if the credit card billing component is offline or unresponsive, you do not want the sales order process to fail. Instead, you want the order to be collected and the billing operation to proceed at a later time. Figure 1-1 provides a conceptual workflow for an e-commerce business that uses multiple services to process orders.

Friday, February 23, 2007

การอ้างอิงฟอร์มหลัก สำหรับ SDI หรือ MDI Form

วิธีการอ้างอิงฟอร์มหลักสำหรับการใช้ ShowDialog() และเมื่อปิดแล้วให้ย้อนกลับ
มาที่ฟอร์มแรกที่ทำงาน . .

ตัวอย่าง

frmLogon logonForm = (frmLogon)this;

logonForm.hide(); // ฟอร์มหาย

frmShowMem showmemForm = new frmShowMem();
showmemForm.showDialog();
// แสดง และ ทำงานบน ShowMem เมื่อทำงานเสร็จก็จะปิด

logonForm.show(); // แสดงฟอร์มแรกก่อนไป showmemForm

Thursday, February 22, 2007

การป้องกัน SQL Injection ด้วย Parameter ใน .net

ตัวอย่าง

string ins_Sql;
ins_Sql = "INSERT INTO TBIPDPLIST(HN,DRUGCODE,RX_DATE)";
ins_Sql += " VALUES(@HN,@DRUGCODE,@RX_DATE)";
OleDbCommand insCmd = new OleDbCommand(ins_Sql, oledb_Conn);
insCmd.Parameters.Add("@HN", dbRead["HN"].ToString());

insCmd.Parameters.Add("@DRUGCODE", dbRead["DRUGCODE"].ToString());
insCmd.Parameters.Add("@RX_DATE", dbRead["RX_DATE"].ToString());

insCmd.ExecuteNonQuery();

จะเห็นว่าเราใช้วิธีการ @ นำหน้าชื่อ parameters

แล้วก็ใช้ method Parameters.Add ของ OleDbCommand ในการแทนที่ Parameter
เพียงเท่านี้ก็ป้องกัน SQL Injection ได้แล้วครับ

การนำข้อมูลจาก DataSet เข้า MS Excel 2003

ปกติแล้วมีบ่อยครั้งที่เราจำเป็นต้องนำข้อมูลไปใช้ ในรูปแบบของ Excel File
ซึ่งที่จริงแล้วมีหลายวิธีที่เราจะสร้างออกมา

แต่ในหัวข้อนี้ผมจะอธิบายการนำ XML ที่ได้จาก DataSet มาใช้กับ Excel 2003

ตัวอย่าง

string sql = "SELECT * FROM NATION";

FbConnection fbConn = new FbConnection(ConStr);
fbConn.Open();

DataSet ds = new DataSet();

FbDataAdapter fbAdap = new FbDataAdapter(sql,fbConn);
fbAdap.Fill(ds);

ds.Tables[0].WriteXml("NATION.xml");

แล้วเราก็เปิดไฟล์ NATION.xml ด้วยโปรแกรม Microsoft Excel ( รุ่น 2003 )
จากนั้นเราก็ทำการ Save ออกมา . . ก็จะได้เป็น File .xls ที่ใช้ MS Excel เปิดได้

หรืออีกวิธีหนึ่ง . . คือการใช้ . . CrystalReportViewer Object ของตัว .Net เอง

Friday, February 16, 2007

วิธีการใช้ Embeded Firebird

วิธีการที่เราจะใช้ Embeded Firebird นั้น เราต้องไปดาวโหลด firebird1.5-embeded
จากนั้นเวลาเราจะนำมาใช้ ให้ใช้วิธีการดังต่อไปนี้

1. Copy ตัว fbembed.dll มาไว้ใน Directory ของโปรแกรมที่พัฒนา
2. Copy หรือทำการ Add Reference ตัว Firebird Client DLL มาใน Directory

สำหรับ ConnectionString

string ConStr = "Database=databasepath;ServerType=1;";