WCF เทียบกับบริการบนเว็บ
บริการบนเว็บและ Windows Communication Foundations (WCF) เป็นสองวิธีที่แอปพลิเคชันสื่อสารผ่านเครือข่าย
เพิ่มเติมเกี่ยวกับบริการบนเว็บ
บริการเว็บเป็นส่วนประกอบของแอปพลิเคชัน ซึ่งสามารถเข้าถึงได้โดยใช้โปรโตคอลแบบเปิด เช่น SOAP (Simple Object Access Protocol) ซึ่งเป็นภาษาที่ใช้ XML ที่พัฒนาโดย W3C เพื่อเข้ารหัสและส่งข้อมูล SOAP ใช้ XML สำหรับคำอธิบายข้อมูลและ HTTP สำหรับการถ่ายโอนข้อมูล ข้อได้เปรียบหลักจากโปรโตคอลแบบเปิดเหล่านี้คือความสามารถในการทำงานร่วมกันของบริการ แม้ว่าจะมีความแตกต่างในแพลตฟอร์มและภาษาโปรแกรมที่ใช้บริการเว็บใช้ (WSDL) Web services Description Language) เพื่ออธิบายบริการ และ UDDI (Universal Description, Discovery and Integration) เพื่อแสดงรายการบริการที่พร้อมใช้งาน บริการบนเว็บไม่ต้องการเว็บเบราว์เซอร์หรือ HTML เพื่อดำเนินการ และอาจมีหรือไม่มี GUI ตามที่กำหนดโดยแอปพลิเคชัน สามารถใช้บริการเว็บได้ด้วย ASP. NET
เพิ่มเติมเกี่ยวกับ Windows Communication Foundation (WCF)
เปิดตัว Windows Communication Foundation เพื่อแทนที่แพลตฟอร์มบริการเว็บรุ่นก่อน และใช้สถาปัตยกรรมที่มุ่งเน้นบริการในการสร้างแอปพลิเคชัน การทำงานร่วมกันและรูปแบบข้อความที่หลากหลาย ข้อมูลเมตาของบริการ สัญญาข้อมูล และการเข้ารหัสการขนส่งที่หลากหลายเป็นคุณสมบัติของ WCF ข้อความที่คงทน, AJAX และ REST และฟีเจอร์ธุรกรรมที่ปลอดภัยช่วยเพิ่มความหลากหลายให้กับแพลตฟอร์มมากกว่าบริการบนเว็บรุ่นก่อนๆ
Web Services และ WCF ต่างกันอย่างไร
• บริการเว็บสามารถโฮสต์ใน IIS (Internet Information Service) หรือภายนอก IIS ในขณะที่ WCF สามารถโฮสต์ใน IIS, WAS (Windows Activation Service)บริการ WCF โดยทั่วไปสามารถโฮสต์ได้ภายใน IIS 5.1 หรือ 6.0, Windows Process Activation Service (WAS) ที่มีให้โดยเป็นส่วนหนึ่งของ IIS เวอร์ชัน 7.0 และภายในแอปพลิเคชัน. NET ใดๆ หากต้องการโฮสต์บริการเว็บใน IIS เวอร์ชัน 5.1 หรือ 6.0 บริการเว็บจะต้องใช้ HTTP เป็นโปรโตคอลการรับส่งข้อมูลการสื่อสาร
• ในแพลตฟอร์ม Web Services แอตทริบิวต์ Web Service จะถูกเพิ่มที่ด้านบนสุดของคลาส ในขณะที่ใน WCF จะมีแอตทริบิวต์ Service Contract ในทำนองเดียวกัน แอตทริบิวต์ Web Method จะถูกเพิ่มที่ด้านบนของวิธีการของบริการเว็บ ในขณะที่ใน WCF สัญญาการดำเนินการบริการจะถูกเพิ่มที่วิธีการด้านบน
• บริการเว็บใช้ XML 1.0, MTOM (กลไกการเพิ่มประสิทธิภาพการส่งข้อความ) และการเข้ารหัส DIME ในขณะที่ WCF ใช้การเข้ารหัส XML 1.0, MTOM และไบนารี ทั้งสองแพลตฟอร์มรองรับวิธีการเข้ารหัสแบบกำหนดเอง
• แพลตฟอร์มบริการเว็บรองรับ XML Serialization ในขณะที่ใน WCF แพลตฟอร์มบริการรองรับ Run Time Serialization
• บริการ WCF สามารถเป็นแบบมัลติเธรดผ่านคลาสพฤติกรรมการบริการ ในขณะที่บริการบนเว็บไม่สามารถทำมัลติเธรดได้
• บริการ WCF รองรับการเชื่อมโยงประเภทต่างๆ เช่น BasicHttpBinding, WSHttpBinding, WSDualHttpBinding ในขณะที่บริการบนเว็บใช้เฉพาะ SOAP หรือ XML สำหรับจุดประสงค์นี้
• บริการเว็บถูกรวบรวมเป็นชุดไลบรารีของคลาส ไฟล์ชื่อ 'ไฟล์บริการ' มีนามสกุล.asmx และมีคำสั่ง @ WebService ที่ระบุคลาสที่มีรหัสสำหรับบริการและชุดประกอบที่อยู่ใน WCF