तो मैं डब्ल्यूसीएफ का उपयोग कर रहा हूं, और एक आंतरिक ऐप के लिए किसी अन्य कंपनी को देने के लिए अपने इंटरफेस और सेवाओं को दस्तावेज करना चाहता हूं। उन इंटरफेस को दस्तावेज करने का सबसे अच्छा तरीका क्या है? मैं कोड के साथ दस्तावेज इनलाइन करना पसंद करूंगा, और फिर HTML आउटपुट करने के लिए कुछ सुंदरता प्राप्त करूँगा, लेकिन मुझे यकीन नहीं है कि ऐसा करने के लिए कोई अनुशंसित तरीका है या नहीं।डब्ल्यूसीएफ इंटरफेस दस्तावेज करने का सबसे अच्छा तरीका?
उत्तर
इसके लिए एक्सएमएल दस्तावेज़ का उपयोग करें। बहुत सारे स्मार्ट मेटा टैग हैं जो आपको कोड नमूने, ऑपरेशन, फेंकने वाले अपवाद आदि के संदर्भों को संदर्भित करने की अनुमति देंगे।
फिर आप Sandcastle (+ कुछ GUI जिसे आप कोडेप्लेक्स पर पा सकते हैं) का उपयोग कर सकते हैं ताकि उत्पन्न हो सके सीएम, या एचटीएमएल दस्तावेज।
कंपाइलर से एक्सएमएल आउटपुट का उपयोग करना अच्छा है ... लेकिन यह मेरा अनुभव रहा है कि सेवा की पूरी जटिलता को व्यक्त करना मुश्किल है और यह अकेले टिप्पणियों में आविष्कार, निर्भरता आदि की उम्मीद है। आप इसे कवर करने के लिए एक अलग वास्तविक दस्तावेज़ (शब्द, एचटीएमएल, विकी) को बनाए रखने से बेहतर हैं।
मैं दो एक्सएसएल फाइलों का उपयोग करता हूं - एक ऑपरेशन के लिए डब्ल्यूएसडीएल दस्तावेज करने के लिए, एक डेटा को पास करने के लिए एक्सएसडी दस्तावेज करने के लिए।
दुर्भाग्यवश, मुझे एक एकल संयोग समाधान नहीं मिला है, इसलिए मैं दो एक्सएसएलटी फाइलों के साथ काम करता हूं जो क्रमशः डब्लूएसडीएल और एक्सएसडी को एचटीएमएल दस्तावेज में परिवर्तित करते हैं।
WSDL Viewer डब्लूएसडीएल के लिए नौकरी करता है और पहला HTML दस्तावेज़ बनाता है, और xs3p एक्सएसडी फ़ाइल में मौजूद डेटा के लिए समान होता है।
मैं अपना इंटरफ़ेस अनुबंध एक सामान्य डीएल में रखूंगा और इसे बाहर कर दूंगा। यह उन्हें सेवा के ब्योरे दिए बिना अनुबंध पर एक्सएमएल टिप्पणियां देता है और साथ ही उन्हें ऑफ़लाइन मोड में सेवा को लागू करने की इजाजत देता है जब तक कि वे इसका उपयोग करने के लिए तैयार न हों। इसके शीर्ष पर, वे wsdl को बाईपास कर सकते हैं और चैनल बनाने के लिए चैनलफैक्टरी का उपयोग कर सकते हैं।
हम इसके लिए WCFExtras (http://www.codeplex.com/WCFExtras) का उपयोग करते हैं।
<wsdl:operation name="GetTickets">
<wsdl:documentation>
<summary> Retrieve the tickets information for the specified order </summary> <param name="orderId">Order ID</param> <returns>Tickets data</returns>
</wsdl:documentation>
<wsdl:input wsaw:Action="xxxx" message="tns:PartnerAPI_GetTickets_InputMessage"/>
<wsdl:output wsaw:Action="xxxx" message="tns:PartnerAPI_GetTickets_OutputMessage"/>
</wsdl:operation>
:
/// <summary>
/// Retrieve the tickets information for the specified order
/// </summary>
/// <param name="orderId">Order ID</param>
/// <returns>Tickets data</returns>
[OperationContract]
TicketsDto GetTickets(int orderId);
कि इंटरफ़ेस का डबल्यूएसडीएल में परिलक्षित हो:
अन्य सुविधाओं में यह उदाहरण के लिए जाँच कैसे इन एक्सएमएल टिप्पणियां उत्पन्न डबल्यूएसडीएल में अपने कोड एक्सएमएल टिप्पणियों के लाइव निर्यात की अनुमति देता है,
उनके दस्तावेज़ों से एक अंश:
स्रोत कोड से डब्लूएसडीएल दस्तावेज़ीकरण जोड़ना XML टिप्पणियां यह एक्सटेंशन अनुमति देता है क्या आप अपनी स्रोत फ़ाइल में एक्सएमएल टिप्पणियों से सीधे डब्लूएसडीएल दस्तावेज (एनोटैटन) जोड़ना चाहते हैं। ये टिप्पणियां डब्लूएसडीएल के हिस्से के रूप में प्रकाशित की जाएंगी और डब्लूएसडीएल उपकरणों के लिए उपलब्ध हैं जो जानते हैं कि उनका लाभ कैसे लें (उदा। अपाचे एक्सिस wsdl2java और अन्य)। रिलीज 2.0 में क्लाइंट साइड डब्लूएसडीएल आयातक भी शामिल है जो उत्पन्न डब्लूएसडीएल टिप्पणियों को जेनरेट प्रॉक्सी कोड में एक्सएमएल टिप्पणियों में बदल देगा।
क्या यह आईडीई में भी दिखाई देगा? विजुअल स्टूडियो के इंटेलिजेंस की तरह? – Farinha
बस अगर कोई इसे ढूंढने के मामले में होता है, तो नवीनतम [यहां] (https://wcfextrasplus.codeplex.com) है।आप [nuget] (https://www.nuget.org/packages/WCFExtrasPlus/2.4.0) का उपयोग करके भी डाउनलोड कर सकते हैं। – Joyce
हालांकि तत्काल स्पष्ट नहीं है, संदर्भों के ऊपर टिप्पणी WCFExtras +, एक अलग परियोजना है, लेकिन WCFExtras पर काम की निरंतरता है। अच्छी चीज़। – TylerY86
- 1. एफ # कोड दस्तावेज करने का सबसे अच्छा तरीका क्या है?
- 2. जावा एनम दस्तावेज करने के लिए जावाडॉक का उपयोग करने का सबसे अच्छा तरीका क्या है?
- 3. cblas इंटरफेस के लिए कोई अच्छा दस्तावेज?
- 4. डब्ल्यूसीएफ वेब एपीआई संस्करण का सबसे अच्छा तरीका क्या है?
- 5. सिल्वरलाइट में डब्ल्यूसीएफ अपवाद को पकड़ने का सबसे अच्छा तरीका?
- 6. डब्ल्यूसीएफ सीखने का सबसे अच्छा तरीका क्या है?
- 7. फ्लोट पार्स करने का सबसे अच्छा तरीका?
- 8. स्ट्रिंगस्ट्रीम खाली करने का सबसे अच्छा तरीका?
- 9. डाउनलोड शुरू करने का सबसे अच्छा तरीका?
- 10. डेटा कैश करने का सबसे अच्छा तरीका
- 11. PHP हुक करने का सबसे अच्छा तरीका
- 12. इंटरफेस का उपयोग करके पढ़ने और लिखने की चिंताओं को अलग करने का सबसे अच्छा तरीका?
- 13. एक आरईएसटी एपीआई दस्तावेज उत्पन्न करने का सबसे अच्छा तरीका क्या है?
- 14. प्लगइन समर्थन को लागू करने का सबसे अच्छा तरीका
- 15. कॉम्पैक्ट फ्रेमवर्क पर डब्ल्यूसीएफ का उपयोग और सुरक्षित करने का सबसे अच्छा तरीका?
- 16. डब्ल्यूसीएफ सेवाओं का परीक्षण करने का सबसे अच्छा तरीका क्या है?
- 17. सी # परियोजना आयोजित करने का सबसे अच्छा तरीका क्या है?
- 18. पाइथन के साथ जावा उत्पन्न करने का सबसे अच्छा तरीका?
- 19. एक कैसंद्रा क्लस्टर को कम करने का सबसे अच्छा तरीका
- 20. सी # और जावा इंटरफेस करने का सबसे अच्छा तरीका क्या है?
- 21. जावा में टेक्स्ट उपयोगकर्ता-इंटरफेस (ncurses-like) कार्यक्षमता प्राप्त करने का सबसे अच्छा तरीका क्या है?
- 22. AJAX + PHP कोड दस्तावेज़ करने का सबसे अच्छा तरीका?
- 23. सर्वर पर छवि पास करने का सबसे अच्छा तरीका?
- 24. डब्ल्यूसीएफ सेवा और अलग धागे के बीच संवाद करने का सबसे अच्छा तरीका क्या है?
- 25. MySQL क्लॉज का उपयोग करने का सबसे अच्छा तरीका "ActiveRecord
- 26. RedirectToAction का परीक्षण करने का सबसे अच्छा तरीका क्या है?
- 27. कमांड लाइन टूल्स का परीक्षण करने का सबसे अच्छा तरीका?
- 28. क्यूटी में एचटीएमएल का विश्लेषण करने का सबसे अच्छा तरीका?
- 29. NHibernate में सत्र का प्रबंधन करने का सबसे अच्छा तरीका?
- 30. डेटाबेस संचालित सामग्री का अनुवाद करने का सबसे अच्छा तरीका
WCFExtras 'कार्यान्वयन बेहतर विकल्प है। – TylerY86
[विस्तार] यह एक्सएमएल दस्तावेज़ों को सीधे वर्णक को जोड़ता है। एक्सएमएल दस्तावेज़ों का उपयोग करना उचित है, लेकिन जबकि सैंडकासल या एसएचएफबी स्टैंडअलोन प्रलेखन के लिए बिल्कुल उपयुक्त है, वैसे ही यह तीसरी पार्टी के रूप में WCFExtras के रूप में है, लेकिन कम परिदृश्य विशिष्ट है। – TylerY86