تفاوت بین WCF و ASP.NET Web Service
WCF از آن دسته از سرویس هاست که در NET Framwork. قابل دسترسی است. درواقع WCF جایگزینی برای تمام فناوری های Web Service های قبلی مایکروسافت است.
WCF از آن دسته از سرویس هاست که در NET Framwork. قابل دسترسی است.WCF با .NET Framwork ساخته شده است. که البته قبل از WCF از ASP.NET Web Service در .NET Framwork استفاده شده است.
WCF درواقع یک قالب کاری برای ساختن برنامه و نرم افزارهای سرویس گرا است. با استفاده از WCF می توانید داده ها را به صورت پیام هایی از یک درگاه سرویس به درگاه دیگری ارسال کنید.
در حال حاضر WCF آخرین نسخه برنامه نویسی برای ساخت و توسعه برنامه های سرویس گرا است.
ما در این مقاله تفاوت های بین WCF و ASP.NET Web Service را ارائه خواهیم داد. با ما همراه باشید.
کاربرد WCF
- با استفاده از کلاسهای ServiceContract و OperationContract میتوان WCF را در برنامه پیاده سازی کرد.
- اجرا WCF در محیط های IIS,WAS و Windows Server
- WCF برای مدیریت داده ها از کلاس استفاده می کند که مهم ترین و جهانی ترین آن DataContract است که توسط System.Runtime.Serialization پشتیبانی می شود.
- پشتیبانی از پروتکل هایی مانند HTTP,HTTPS,TCP,NAMED PIPES,MSMQ
- پشتیبانی از ارتباطات
1. One Away: این ارتباط، یک طرفه است. به این معنی که در آن یک درگاه واحد پیامی را بدون درخواست پاسخ ارسال می کند.
2. Request-Respons: یک درگاه، داده ها را از یک درگاه دیگر Request می کند و آن درگاه پاسخ می دهد.
3. Duplex Service Operation: این ارتباط دوگانه است. به این شکل که دو درگاه، ارتباط برقرار می کنند و داده رد و بدل می شود.
- سریال کردن Hash TABLE
*منظور از Hashing، فرایند تبدیل مقادیر از محدوده ی رشته به محدوده ای شامل اعداد صحیح است.
*Hash TABLE را میتوان مجموعه ای از آیتم ها در قالب آرایه دانست که این فرایند را انجام می دهد.
- پشتیبانی از کدهای Binary,XML,Mtom (بهتر است بگوییم: ارسال کد به سادگی یک کاراکتر با XML و یا به پیچیدگی یک رشته از داده های Binary)!
- پشتیبانی از Multi-Threading
*Multi-Threading اجرای همزمان قسمت های مختلف کدهای یک برنامه است.
- WCF برای انتقال داده از SOAP استفاده نمی کند بلکه از یک روش بهتر بوسیله ی FaultContract بهره میبرد.
*(FaultContract کلاسی برای انتقال و مدیریت اطلاعات است.)
- WCF قابل اعتماد است و از ضریب امنیت بالایی برخوردار است و سریعتر از Web Service است.
کاربرد ASP.NET Web Service
- با استفاده از کلاسهای WebService و WebMethod میتوان Web Service را در برنامه پیاده سازی کرد.
- اجرا Web Service فقط در محیط IIS
- Web Service برای مدیریت داده ها از XML استفاده می کند که توسط System.Xml.Serialization پشتیبانی می شود.
- پشتیبانی از پروتکل های HTTP,HTTPS
- پشتیبانی از ارتباطات One Away و Request-Respons
- پشتیبانی از کدهای XML,Mtom
- Web Service کندتر از WFC است. این سرویس قابل اعتماد است اما نه به اندازه WFC!
درواقع WCF جایگزینی برای تمام فناوری های Web Service های قبلی مایکروسافت است. که به دلیل امنیت بالا WCF نسبت به Web Service باعث شده تفاوت های چشمگیری بین این دو قائل شود.