آموزش Swagger برای مستند سازی Web API در ASP.NET به زبان ساده

یکی از مباحث برنامه نویسی وب مبحث api هستش که امروزه پروژه های بزرگ به سمت این تکنولوژی در حال تغیر و توسعه هستند.در این اموزش قصد دارم یکی از کتاب خانه ها پر کاربرد .net به اسمSwagger رو به اشتراک بزارم. بزارید با یک مثال ساده شروع کنیم.فرض کنید شما به عنوان برنامه نویش backend در ایران با یک شرکت خاجی قرار داد بسته اید و از شما خواسته شده که api های سایتو بزنید. خب شما بعد از نوشتن پروژه باید یک داکیومنت n صفحه ای بسازید و اموزش کار با api رو توش بنویسد تا کلاینت کار از اون استفاده کنه!!خب این کار خیلی سخت و وقت گیر هستش والی با استفاده از Swagger شما میتوانید ظاهری گرافیکی با اجرای اینلاین apiیتون رو بنوسید.برای این کار یک پروژه جدید mvc به اسم Swagger بسازید

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
پروژه جدید

خب حالا یک کلاس یه اسم Product بسازید

کلاس product

بعد بر روییه Controller کلیک کنید و addControler را انتخاب کنید و بهد گزینه Web Api Controler-Empty را انتخاب کنید

Add Api

بعد داخل Api را به شکل زیر تغیر دهید(دقت کنید م اینجا از داده stattic و فقط از دو تابع استفاده کرده ایم شما میتوانید بسته به نیاز خود orm و تابع های دیگه رو پیاده سازی کنید)

Api Config

خب برنامه را اجرا کنید و خروجی ان را تست کنید.تا انجا ما فقط ی برنامه api ساده نوشتیم و کار خاصی انجام ندادیم.حالا میخوایم وارد اصل مطلب بشیم . روی پروژه کلیک راست کرده و گزینه Manage Nuget Pakage را انتخاب نماید و Swagger را سرچ بزنید و نصب کنید

Install Package

میتوانید با کد زیر انرا در کنسول ناگین دانلود کنید

Install-Package Swashbuckle

بعد از نصد به طور خوتکار یک کلاس به اسم SwaggerConfig دورن appstart ساخته میشود ان را باز کنید و به شکل زیر کانفیگ کنید

COnfig Swagger

خب بعد از نصب به مرحله بعد میرسیم که تظیم vs برای فایل های xml میباشد وارد مسیر زیر بشید

Project>>SwaggerProprties>>Build

و بعد در قسمت outPut گزینه xml document file را بزنید

Xml Sttings

حال برنامه را اجرا کنید و به ادرس زیر بروید

http://localhost:17886/swagger

خروجی به شکل زیر خواهد بود

OutPut

توجه کنید خود کتاب خانه همه کار هارو به صورت اتوماتیک انجام میده و نیاز به تنظیمات اضافی نیست ، امیدوارم مفید بوده باشه


سبحان مظفری
سبحان مظفری

I am sobhan mozafari from Iram . I am working with Microsoft Technologies Like ASP.NET MVC , C# and SQL Server . I Interested in Node.js and Google Could computing and my favorite C++ .

نظرات