ผมได้โพสต์ชุดที่สมบูรณ์ของการสาธิตสบู่ในCodeCentral เป็นรายการ 28789
สิ่งเหล่านี้มีการสาธิต SOAP ยุค Delphi 2007 ทุกครั้งจากWebServices
โฟลเดอร์ซึ่งได้รับการอัพเดตสำหรับ Delphi XE และ XE2 รวมถึงการแปลงเซิร์ฟเวอร์ WAD เก่าให้เป็นเซิร์ฟเวอร์ INDY VCL ใหม่ คุณคิดว่ามันน่าประทับใจยกเว้นมันไม่ใช่ มันง่ายมาก เพียงใช้ตัวช่วยสร้างเพื่อสร้างโครงการใหม่จากนั้นเพิ่มส่วนต่อประสานบริการบนเว็บและหน่วยการนำไปใช้งานและหน่วยอื่น ๆ ที่อยู่ในการสาธิตเก่าให้กับโครงการ เมื่อพวกเขาถูกเพิ่มเข้าไปในโครงการพวกเขาก็ทำงาน SOAP Servers พื้นฐานนั้นง่ายต่อการสร้างใน Delphi เมื่อคุณมีตัวอย่างที่ใช้งานได้คุณจะพบว่ามันง่ายที่จะแก้ไขและขยาย
ตัวอย่างที่ดีที่สุดตอบคำถามที่ฉันถามข้างต้นอยู่ในSOAPDataModule
โฟลเดอร์ย่อย
ปัญหาพื้นฐานของการสาธิตจากยุค 2007 นั้นมีสองประการ:
WAD (ดีบักแอปพลิเคชันเว็บ) หายไป คุณต้องสร้างเซิร์ฟเวอร์ใหม่โดยใช้เซิร์ฟเวอร์ Indy เพื่อการสาธิตที่ดีที่สุดประหยัดคุณจากการใช้ WAD (ซึ่งหายไปแล้ว) หรือตั้งค่าสภาพแวดล้อม ISAPI ภายใต้ IIS ซึ่งแทบจะไม่เหมาะสำหรับการสาธิต โครงการสาธิตใหม่ผมทำเรียกว่าSoapDMServerINDYและมันประกอบด้วยโมดูลข้อมูล (datamod_u.pas) ซึ่งเป็นรูปแบบ VCL User Interface หน่วย ( IndyServerVCLFormUnit.pas
) และเว็บโมดูล Indy IndyServerWebModule.pas
เซิร์ฟเวอร์ที่เรียกว่า
การสาธิต Delphi 2007 เกิดขึ้นเนื่องจากการฝึกหัดใหม่ของการมีโฟลเดอร์ย่อย Debug / Win32 ซึ่งการสาธิตการปฏิบัติการอยู่ในขณะนี้คุณจำเป็นต้องเพิ่มขึ้นอีก ฉันแก้ไขเซิร์ฟเวอร์สาธิตเพื่อเตือนคุณด้วยข้อความแสดงข้อผิดพลาดหากไม่พบไฟล์ข้อมูลช่วยให้คุณประหยัดจากข้อผิดพลาด "การแยกวิเคราะห์ XML" ที่ลึกลับ ฉันได้เพิ่มการตรวจสอบข้อผิดพลาดบางอย่างในเดโมบางอย่างเพื่อที่จะบอกคุณว่าคุณต้องติดตั้งอินเตอร์เบสสำหรับการสาธิตนี้เพื่อให้ทำงานได้เนื่องจากเดโมบางตัวจำเป็นต้องติดตั้งและรัน Interbase และหนึ่งต้องการนามแฝงที่เรียกว่า IBLOCAL และโดยเฉพาะอย่างยิ่งตารางที่เรียกว่าEMPLOYEE
มีอยู่
องค์ประกอบของการสาธิตนี้เป็นเซิร์ฟเวอร์ ( SoapDMServerINDYตามรหัสจาก SOAPDMServerWAD) และลูกค้าSOAPDMClientที่เชื่อมต่อกับการสาธิตและมีสองหน้าหนึ่งหน้าจะแสดงการเข้าถึงข้อมูลขั้นพื้นฐานผ่านชุดข้อมูล DBGrid + ชุดที่สอง หน้าแสดงวิธีเรียกใช้เมธอด SOAP แบบกำหนดเอง
ในการใช้การสาธิต: คุณต้องเริ่มเซิร์ฟเวอร์คลิกปุ่มเริ่มแล้วเริ่มไคลเอนต์และคลิกเชื่อมต่อ