2010-06-10 27 views

उत्तर

7

डब्ल्यूसीएफ सामान्य रूप से सेवाओं के लिए एक संचार आधारभूत संरचना है। डब्ल्यूसीएफ आरआईए सेवाएं स्वचालित रूप से अनुप्रयोग विकास की सुविधा के लिए क्लाइंट और सर्वर प्रॉक्सी ऑब्जेक्ट्स उत्पन्न करती हैं, और वास्तविक संचार करने के लिए डब्ल्यूसीएफ पर निर्भर करती हैं। एडीओ.Net डेटा सेवाओं का नाम बदलकर डब्ल्यूसीएफ डाटा सर्विसेज कर दिया गया है, और डब्ल्यूसीएफ पर ओडाटा सेवाएं प्रदान करता है।

1

यह एक कोलिन ब्लेयर के द्वारा होता है समझा WCF (ADO.Net) डेटा सेवाओं WCF रिया बनाम डेटा सेवाओं के लिए एक अच्छा लेख

http://forums.silverlight.net/t/103015.aspx/1

आप सवाल पूछने के अनुरूप है है एक सादा हैमबर्गर पैटी और एक हंबूगर के बीच क्या अंतर है, यही कारण है कि सीधे जवाब प्राप्त करना मुश्किल है। एक अच्छा जवाब प्राप्त करने से इस तथ्य से भी बाधा आती है कि कम से कम पीडीसी तक आरआईए सेवाएं "फीचर पूर्ण नहीं" होंगी, इसलिए आपको जो भी जवाब मिलेगा वह उम्मीदों और अटकलों पर आधारित होगा। अंत में, आरआईए सेवाएं एक कारण के लिए बहुवचन है, आरआईए सेवाओं में कई कक्षाएं हैं जो विभिन्न चीजें करती हैं। रोडमैप और आरआईए सेवा टीम के लक्ष्यों की मेरी समझ के आधार पर मेरा जवाब यहां दिया गया है।

आरआईए सेवाएं क्लाइंट और सर्वर घटकों की एक लाइब्रेरी है जो एडीओ.NET डेटा सेवाओं पर बोल्ट करती है। जब आरआईए सेवाओं का पूरा ढेर उपयोग किया जाता है तो आरआईए सेवाओं और सादे डब्ल्यूसीएफ के बीच का अंतर निम्नानुसार है:

क्लाइंट साइड डेटा ऑब्जेक्ट्स को कॉन्ट्रैक्ट समय पर प्रतिबिंब का उपयोग करके उत्पन्न किया जाता है, जो कि सेवा अनुबंध की बजाय वास्तविक सर्वर साइड ऑब्जेक्ट्स के आधार पर संकलित होता है। यह आरआईए सेवाओं को ऑब्जेक्ट्स के बीच किसी भी व्यावसायिक नियम और रिश्तों को शामिल करके अधिक समृद्ध क्लाइंट साइड ऑब्जेक्ट मॉडल प्रदान करने की अनुमति देता है। हालांकि, इसका मतलब यह है कि आरआईए सेवाएं सादा डब्ल्यूसीएफ की तुलना में कुछ लचीलापन देती हैं। उदाहरण के लिए, आरआईए सेवा serializaer वर्तमान में कुछ डेटा प्रकारों का समर्थन नहीं करता है जो डब्ल्यूसीएफ संभालने में सक्षम होंगे। एडीओ.NET डेटा सेवाओं की तरह आरआईए सेवाएं, क्लाइंट और सर्वर के बीच LINQ क्वेरी को क्रमबद्ध करने का समर्थन करती हैं। इसका मतलब है कि क्लाइंट LINQ क्वेरी बना सकता है और इसे सर्वर पक्ष चला सकता है। सादा एडीओ.NET डेटा सेवाओं के विपरीत आरआईए सेवाएं, रनटाइम पर स्वचालित रूप से सीआरयूडी उत्पन्न नहीं करती हैं। एसक्यूएल सर्वर से परिचित लोगों के लिए, मैं नियमित ट्रिगर्स (उर्फ क्वेरी इंटरसेप्टर) का समर्थन करने के रूप में एडीओ.NET डेटा सेवाओं का वर्णन करता हूं जबकि आरआईए सेवाओं को ट्रिगर्स के इंस्टॉलेशन की आवश्यकता होती है।

1

निम्नलिखित उत्तर मेरे द्वारा नहीं है, लेकिन अभी भी प्रश्न के एक हिस्से का उत्तर देते हैं जो अनुत्तरित छोड़ दिया गया है।

मैं यहाँ https://social.msdn.microsoft.com/Forums/en-US/687426d9-709f-4e73-8c4c-dd3630f006e7/wcf-data-service-or-wcf-service?forum=adodotnetdataservices

WCF सेवा से कॉपी-पेस्ट किया इस जवाब कर रहे हैं आपरेशन केंद्रित - मुख्य बात आप इन के साथ क्या परिभाषित परिचालन (कार्यों) है। डेटा तरीके से द्वितीयक चीज़ के रूप में आता है। दूसरी तरफ वे ट्रांसपोर्ट/प्रोटोकॉल के कई अलग-अलग काम कर सकते हैं। आपके पास क्लाइंट क्या कर सकता है और नहीं कर सकता है, यह निर्धारित करने की क्षमता है। ग्राहक वास्तव में नए प्रश्न/संचालन नहीं कर सकता है, सर्वर को क्लाइंट ज़रूरतों को लागू करना आवश्यक है।

डब्ल्यूसीएफ डाटा सर्विसेज डेटा केंद्रित है - इन के साथ आप जो मुख्य चीज करते हैं, वह डेटा मॉडल को उजागर करने के लिए परिभाषित करता है।डेटा पर संचालन "पूर्वनिर्धारित" (बनाएं/हटाएं/अपडेट/पढ़ें)। यह केवल HTTP प्रोटोकॉल का समर्थन करता है और REST का उपयोग करता है। आप आम तौर पर ग्राहकों को यह तय करने की अनुमति देते हैं कि वे क्या करना चाहते हैं (कुछ सीमाओं में)। डब्ल्यूसीएफ से मुख्य मतभेदों में से एक यह है कि ग्राहक डेटा मॉडल (सामान की तरह एसक्यूएल सोचें) के खिलाफ एक प्रश्न जारी कर सकता है जो ग्राहक बनाता है। इसका मतलब है कि सर्वर को यह जानने की आवश्यकता नहीं है कि क्लाइंट को फ्रंट की आवश्यकता है, तो ग्राहक इसे रनटाइम बताने में सक्षम होगा।

विटेक करस [MSFT]

संबंधित मुद्दे