2017-03-15 10 views
5

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

/// <summary> 
    /// Gets the consumer scores by retailer id and return id 
    /// </summary> 
    /// <param name="retailerId"></param> 
    /// <param name="returnId"></param> 
    /// <returns></returns> 

enter image description here

मैं कुछ भी याद आ रही है?

+1

जब आप "swagger API का उपयोग करना" कहते हैं, तो आपका क्या मतलब है? सी # से अपने swagger दस्तावेज़ उत्पन्न करने के लिए आप विशेष रूप से कौन सी लाइब्रेरी का उपयोग कर रहे हैं? – mclark1129

+0

मैं अपने सी # वेब एपीआई के साथ 'स्वाशबकल। एस्पनेटकोर' का उपयोग कर रहा हूं। – Sameer

उत्तर

4

स्वाशबकल को आपकी XML टिप्पणियों से पढ़ने के लिए, आपको अपनी लक्षित प्रोजेक्ट के लिए XML दस्तावेज़ फ़ाइल को सक्षम करने की आवश्यकता होगी। इसके अतिरिक्त आपको उस स्टार्टअप कॉन्फ़िगरेशन में उस फ़ाइल पर स्वाशबकल को इंगित करने की आवश्यकता होगी।

Swashbuckle Documentation से:

ओपन गुण अपनी परियोजना के लिए संवाद, "बनाएँ" टैब पर क्लिक करें और सुनिश्चित करना है कि "एक्सएमएल फ़ाइल प्रलेखन" चेक किया गया है। यह फ़ाइल का निर्माण करेगा जिसमें बिल्ड-टाइम पर सभी एक्सएमएल टिप्पणियां होंगी।

इस बिंदु पर, XML टिप्पणियों के साथ एनोटेटेड नहीं होने वाली किसी भी कक्षा या विधियों में निर्माण चेतावनी ट्रिगर होगी।

: इस को दबाने के लिए,

कॉन्फ़िगर Swashbuckle उत्पन्न स्वैगर JSON में फ़ाइल पर XML टिप्पणियों को शामिल करने गुण संवाद में "दबाने चेतावनी" फ़ील्ड में चेतावनी कोड "1591" में प्रवेश *।

services.AddSwaggerGen(c => 
{ 
    c.SwaggerDoc("v1", 
     new Info 
     { 
      Title = "My API - V1", 
      Version = "v1" 
     } 
    ); 

    var filePath = Path.Combine(PlatformServices.Default.Application.ApplicationBasePath, "MyApi.xml"); 
    c.IncludeXmlComments(filePath); 
} 

एन्नोटेट सारांश, टिप्पणियों और प्रतिक्रिया टैग के साथ अपने कार्यों

/// <summary> 
/// Retrieves a specific product by unique id 
/// </summary> 
/// <remarks>Awesomeness!</remarks> 
/// <response code="200">Product created</response> 
/// <response code="400">Product has missing/invalid values</response> 
/// <response code="500">Oops! Can't create your product right now</response> 
[HttpGet("{id}")] 
[ProducesResponseType(typeof(Product), 200)] 
[ProducesResponseType(typeof(IDictionary<string, string>), 400)] 
[ProducesResponseType(typeof(void), 500)] 
public Product GetById(int id) 

XML प्रोजेक्ट फ़ाइल को अपडेट करने के लिए अपनी प्रोजेक्ट को पुनर्निर्माण करें और स्वैगर JSON एंडपॉइंट पर नेविगेट करें। ध्यान दें कि विवरण संबंधित स्वैगर फ़ील्ड पर मैप किए गए हैं।

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