﻿<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://developers.de/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Armin Kalajdzija Posts : dotnet</title><link />http://developers.de/blogs/armin_kalajdzija/archive/tags/dotnet/default.aspx<description>Tags: dotnet</description><dc:language>en</dc:language><generator>CommunityServer 2008 SP1 (Build: 30619.63)</generator><item><title>Including XML Comments in Swagger under ASP.NET Core</title><link />http://developers.de/blogs/armin_kalajdzija/archive/2016/09/30/including-xml-comments-in-swagger-under-asp-net-core.aspx<pubdate>Fri, 30 Sep 2016 14:44:47 GMT</pubdate><guid ispermalink="false">7e491611-45ad-4dae-a68f-c4cb64439510:1799600</guid><dc:creator>Armin Kalajdzija</dc:creator><slash:comments>0</slash:comments><wfw:commentrss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://developers.de/blogs/armin_kalajdzija/rsscomments.aspx?PostID=1799600</wfw:commentrss><comments>http://developers.de/blogs/armin_kalajdzija/archive/2016/09/30/including-xml-comments-in-swagger-under-asp-net-core.aspx#comments</comments><description>&lt;p&gt;For all of you using Swagger, a great tool or let&amp;#39;s better say Framework to Document and Represent your RESTful Web API Service under ASP.NET Core, you will probably be interested in following few lines of Code that enables Swagger to use your Project XML Documentation as information source. 
&lt;/p&gt;&lt;p&gt;First of all, you have to enable Generation of XML Documentation for your ASP.NET Core Project under &lt;strong&gt;Project Properties&lt;/strong&gt; &amp;gt; &lt;strong&gt;Build&lt;/strong&gt; and Check the &amp;quot;&lt;strong&gt;XML Documentation file&lt;/strong&gt;&amp;quot; checkbox. After that you need to change your &lt;strong&gt;Startup.cs&lt;/strong&gt; file and add following lines to your Configuration for Swagger:
&lt;/p&gt;&lt;p&gt;&lt;span style="color:blue;font-family:Consolas;font-size:9pt;"&gt;public&lt;span style="color:black;"&gt;
				&lt;span style="color:blue;"&gt;void&lt;span style="color:black;"&gt; ConfigureServices(&lt;span style="color:#2b91af;"&gt;IServiceCollection&lt;span style="color:black;"&gt; services)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;{
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:green;font-family:Consolas;font-size:9pt;"&gt;// Add framework services.&lt;span style="color:black;"&gt;
			&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;services.AddMvc();
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;&lt;span style="color:green;font-family:Consolas;font-size:9pt;"&gt;// Inject an implementation of ISwaggerProvider with defaulted settings applied&lt;span style="color:black;"&gt;
			&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;services.AddSwaggerGen();
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;            
 &lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;services.ConfigureSwaggerGen(options =&amp;gt;
&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:36pt;"&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;{
&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:72pt;"&gt;&lt;span style="color:green;font-family:Consolas;font-size:9pt;"&gt;//Determine base path for the application.&lt;span style="color:black;"&gt;
			&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:72pt;"&gt;&lt;span style="color:blue;font-family:Consolas;font-size:9pt;"&gt;var&lt;span style="color:black;"&gt; basePath = &lt;span style="color:#2b91af;"&gt;PlatformServices&lt;span style="color:black;"&gt;.Default.Application.ApplicationBasePath;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p style="margin-left:108pt;"&gt;&lt;span style="color:green;font-family:Consolas;font-size:9pt;"&gt;//Set the comments path for the swagger json and ui.&lt;span style="color:black;"&gt;
			&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:72pt;"&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;options.IncludeXmlComments(basePath + &lt;span style="color:#a31515;"&gt;&amp;quot;&lt;span style="color:#ff007f;"&gt;\\&lt;span style="color:#a31515;"&gt;MyProjectName.xml&amp;quot;&lt;span style="color:black;"&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:36pt;"&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;});
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;            
 &lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;}
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;Hope this will save you some time searching for on the net, and continue to focus on more important things in your Project.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://developers.de/aggbug.aspx?PostID=1799600" width="1" height="1"&gt;</description><category domain="http://developers.de/blogs/armin_kalajdzija/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://developers.de/blogs/armin_kalajdzija/archive/tags/.Net/default.aspx">.Net</category><category domain="http://developers.de/blogs/armin_kalajdzija/archive/tags/dotnet/default.aspx">dotnet</category><category domain="http://developers.de/blogs/armin_kalajdzija/archive/tags/swagger/default.aspx">swagger</category><category domain="http://developers.de/blogs/armin_kalajdzija/archive/tags/dotnetcore/default.aspx">dotnetcore</category><category domain="http://developers.de/blogs/armin_kalajdzija/archive/tags/aspnetcore/default.aspx">aspnetcore</category></item></channel></rss>