.NET APIs Part 4 – Creating the APIs

We are, finally, ready to create our ASP.NET Core application that will host our traditional and our minimal APIs. (This series begins here.)

The code for this blog post is available here:
git clone https://github.com/JesseLiberty/Cars.git

Please note that WordPress seems to be broken and so the layout will be imperfect.

To get started, open Visual Studio 2022 and make sure you are fully up to date. Click on Create A New Project and select ASP.NET Core Web App, making sure that C# is the selected language

Give your project a name and a location

Choose .NET 7 as your Framework with no authentication and click Create.

If you’ve been following along with this tutorial already, you can steal from your earlier project. Otherwise, just type in the code.

Let’s start in appsettings.json where we will add the connection string to connect us to the database we created last time

Controllers

Key to creating your API is to create controllers. A controller is the class that holds the start of the logic that your API will use. This is much easier to demonstrate than to explain. Start by creating a folder named Controllers

Right click on your Controllers folder and create a class named CarController. For now, all our APIs will originate here. Let’s set up the top of the file by declaring a logger (supplied by Microsoft in the Microsoft.AppNetCore.MVC namespace) and an instance of our CarRepository

REST

We’ll be using REST for our APIs. There is much that you can know about REST, but for our purposes all we need to know is that we’ll be using the standard HTTP keywords to Post (Create), Get (Read), Put (Update) and Delete (Delete).

Starting Data

To have data to work with, I downloaded the Car Information Dataset from Kagel (Please read their licensing agreement before using this data elsewhere). I modified the CSV file to add an id column and an is_deleted column.

I then imported this data into a table, following the directions in this excellent tutorial. Finally, I dropped the id column and added it back as the identity column.

alter table car
add car_id_new int identity(1,1)
go

alter table car drop column id
go

exec sp_rename 'car_id_new', 'id'
go

At this point, I have a table with all the columns from the imported data, as well as an identity column.

Go to your car class (that we created in part 3) and modify it as follows (to match the incoming data):

public class Car
{
    public int id { get; set; }
    public string name { get; set; } = null!;
    public string mpg { get; set; } = null!;
    public string cylinders { get; set; } = null!;
    public string displacement { get; set; } = null!;
    public string horsepower { get; set; } = null!;
    public string weight { get; set; } = null!;
    public string acceleration { get; set; } = null!;
    public string model_year { get; set; } = null!;
    public string origin { get; set; } = null!;
    public string? is_deleted { get; set;}
}

Note that for now we are keeping things very simple. We will not declare DTOs, and so we will not deal with mapping. We’ll save that for a later blog post.

Creating Our First API

We are ready to create our first API. Its job will be to get all the cars in the database. We’ll do this by creating the API in a controller class and then invoking a method in our Car repository.

Create a Controllers folder, if you have not already, and in that folder create a CarController class. Add the following code to the top of the class:

    public class CarController : ControllerBase
    {
        private readonly ILogger<CarController> _logger;
        readonly CarRepository carRepository;

        public CarController(ILogger<CarController> logger,
            CarRepository carRepository)
        {
            _logger = logger;
            this.carRepository = carRepository;
        }

ControllerBase and ILogger are provided by Microsoft (thanks Satya!). Now, let’s create our API, which is a method decorated with the [HttpGet] attribute

 

Deceptively simple. This method returns a list of Car objects by calling GetAll on the carRepository. Let’s go look at that method:

(If you don’t already have a folder Repositories, please create one and add the class CarRepository). Here’s the top of the class:

You will need a using statement for Dapper.

We are now ready to implement the GetAll method:

    

This method will return the list of Car objects that we need, and defaults to not returning deleted records. We begin by creating a SqlBuilder – an object provided by Dapper. We then create our template, ending it with the syntax /**where**/ — this too is for Dapper and allows us to dynamically create our where clause.

You see this in the if statement; we’ll only add the where statement that restricts the results to non-deleted records if the parameter (returnDeletedRecords) is false.

Next we obtain a connection to the DataBase from our databaseConnectionFactory and finally we use that connection to call QueryAsync, identifying the type (Car) and passing in the SQL statement and the parameters to that statement, if any. In this simplified case we do not have any parameters, but we’ll see how to use them in a later blog post.

Testing with Postman

When you run your application Swagger will come up. Minimize that and open Postman, which is much more powerful and easier to work with (especially once we add authorization). Create a folder named Cars (of course, you can actually name it anything you like) and next to that folder click on the three dots that appear when you click on the name of the folder.

Choose Add Request, and rename your new request GetCars. Go to the right hand pane, and make sure the drop down is set to Get. Next to the drop down enter

https://localhost:7025/car

Be sure to substitute the port number (bold) to the one used by Swagger.

That’s all you have to do. Click Send in the upper right hand corner and your API will be called (don’t be afraid to set break points to prove this to yourself) which will call the method in the repository, which will in turn fetch your data from the database and it will all be returned to Postman…

Congratulations! You have your first working API to your back-end data stored in SQL Server!

In this coming blog posts we’ll add the remaining CRUD APIs, examine using services and DTOs and take a look at minimal APIs.


Rodrigo Juarez is a full-stack developer who has specialized in Xamarin in recent years and is now focusing on MAUI. He is also a book author. With over 25 years of experience, Rodrigo has contributed to a diverse array of projects, developing applications for web, desktop, and mobile platforms. Specialized in Microsoft technologies, he has expertise across various sectors, including management, services, insurance, pharmacy, and banking. Rodrigo Juarez can be reached at info@rodrigojuarez.com

Unknown's avatar

About Jesse Liberty

** Note ** Jesse is currently looking for a new position. You can learn more about him at https://jesseliberty.bio Thank you. Jesse Liberty has three decades of experience writing and delivering software projects and is the author of 2 dozen books and a couple dozen online courses. His latest book, Building APIs with .NET, is now available wherever you buy your books. Liberty was a Team Lead and Senior Software Engineer for various corporations, a Senior Technical Evangelist for Microsoft, a Distinguished Software Engineer for AT&T, a VP for Information Services for Citibank and a Software Architect for PBS. He is a 13 year Microsoft MVP.
This entry was posted in API, Essentials. Bookmark the permalink.

658 Responses to .NET APIs Part 4 – Creating the APIs

  1. Frankweity's avatar Frankweity says:

    Этот текст представляет собой обзор свежих данных и исследований в области медицины. Он призван помочь читателям понять, как научные достижения влияют на лечение, диагностику и общее состояние системы здравоохранения.
    Узнай первым! – Наркологическая клиника «Похмельная служба» в Мытищах

  2. Larrytoole's avatar Larrytoole says:

    В этом обзоре мы обсудим современные методы борьбы с зависимостями, включая медикаментозную терапию и психотерапию. Мы представим последние исследования и их результаты, чтобы читатели могли быть в курсе наиболее эффективных подходов к лечению и поддержке.
    Тыкай сюда — узнаешь много интересного – нарколог на дом ростов на дону

  3. Williamclish's avatar Williamclish says:

    Когда запой начинает оказывать разрушительное воздействие на организм, своевременная помощь становится критически важной для предотвращения серьезных осложнений. В Мурманске квалифицированные наркологи на дому обеспечивают оперативную детоксикацию, восстановление обменных процессов и стабилизацию работы внутренних органов. Лечение проводится в комфортной домашней обстановке, что позволяет избежать лишнего стресса и сохранить полную конфиденциальность.
    Выяснить больше – вывод из запоя мурманск.

  4. JoshuaNet's avatar JoshuaNet says:

    legal online pharmacy legitimate online pharmacy reliable online pharmacy

  5. RogerEmbow's avatar RogerEmbow says:

    sildenafil online Sildenafil Vip Viagra tablet online

  6. Justinsag's avatar Justinsag says:

    http://sildenafilvip.com/# Cheap generic Viagra online

  7. MichaelTob's avatar MichaelTob says:

    В практике лечения на дому применяются следующие этапы медицинского воздействия:
    Подробнее – нарколог на дом вывод ростов-на-дону

  8. BrentHoara's avatar BrentHoara says:

    Публикация охватывает основные направления развития современной медицины. Мы обсудим значимость научных исследований, инноваций в лечении и роли общественного участия в формировании системы здравоохранения.
    Нажми и узнай всё – вывод из запоя ростов

  9. Rickyvef's avatar Rickyvef says:

    В этой статье рассматривается комплексный подход к избавлению от зависимости. Читатель узнает, как сочетание физического, психологического и духовного восстановления помогает достичь стойкого выздоровления.
    Ознакомиться с отчётом – Реабилитация наркозависимых

  10. Richardgaupt's avatar Richardgaupt says:

    Этот краткий обзор предлагает сжатую информацию из области медицины, включая ключевые факты и последние новости. Мы стремимся сделать информацию доступной и понятной для широкой аудитории, что позволит читателям оставаться в курсе актуальных событий в здравоохранении.
    Почему это важно? – Похмельная служба в Домодедово

  11. Bernardcax's avatar Bernardcax says:

    Дальше задача — восстановить управляемость состояния. Это включает снижение интоксикации, коррекцию обезвоживания, выравнивание показателей, уменьшение тревоги и нормализацию сна. Но чтобы результат закрепился, необходим второй слой: работа с триггерами (стресс, конфликт, усталость, одиночество), профилактика «вечернего отката», поддержка режима и понимание, какие симптомы допустимы, а какие требуют повторной оценки. Именно это отличает лечение зависимости от разовой попытки «стало легче — дальше как-нибудь».
    Получить дополнительную информацию – анонимная наркологическая клиника

  12. Alfredgib's avatar Alfredgib says:

    В данной статье мы акцентируем внимание на важности поддержки в процессе выздоровления. Мы обсудим, как друзья, семья и профессионалы могут помочь тем, кто сталкивается с зависимостями. Читатели получат практические советы, как поддерживать близких на пути к новой жизни.
    Неизвестные факты о… – частный медик 24 ростов на дону

  13. DavidSmuth's avatar DavidSmuth says:

    В этой публикации мы рассматриваем важную тему борьбы с зависимостями, включая алкогольную и наркотическую зависимости. Мы обсудим методы лечения, реабилитации и поддержку, которые могут помочь людям, столкнувшимся с этой проблемой. Читатели узнают о перспективах выздоровления и важности комплексного подхода.
    Тыкай сюда — узнаешь много интересного – Реабилитация наркозависимых

  14. Geraldowers's avatar Geraldowers says:

    В практике круглосуточного лечения применяются следующие этапы:
    Углубиться в тему – [url=https://narkologicheskaya-klinika-v-rostove19.ru/]платная наркологическая клиника в ростове-на-дону[/url]

  15. RichardErolo's avatar RichardErolo says:

    В этой статье рассматриваются способы преодоления зависимости и успешные истории людей, которые справились с этой проблемой. Мы обсудим важность поддержки со стороны близких и профессионалов, а также стратегии, которые могут помочь в процессе выздоровления. Научитесь первоочередным шагам к новой жизни.
    Это стоит прочитать полностью – Частный Медик 24 проводит реабилитацию зависимых

  16. KermitBaike's avatar KermitBaike says:

    https://freshpharm24.com/ pharmacy no prescription required

  17. Rickycappy's avatar Rickycappy says:

    Эта разъяснительная статья содержит простые и доступные разъяснения по актуальным вопросам. Мы стремимся сделать информацию понятной для широкой аудитории, чтобы каждый смог разобраться в предмете и извлечь из него максимум пользы.
    Подробнее тут – https://kapelnicza-ot-pokhmelya-samara-13.ru/

  18. EdwinWaw's avatar EdwinWaw says:

    Реабилитация алкоголиков невозможна без участия высококвалифицированных специалистов. Это врачи-наркологи, психологи, психотерапевты и социальные работники, каждый из которых вносит свой вклад в восстановление пациента. Психологическая поддержка особенно важна на всех этапах лечения, поскольку помогает пациенту осознать проблему, справиться с внутренними конфликтами и выработать стратегии для предотвращения рецидивов. В некоторых случаях, например, при длительном запое или наркомании, может быть рекомендован выезд на дом для предоставления первой медицинской помощи и дальнейшей реабилитации.
    Изучить вопрос глубже – реабилитация алкоголиков город

  19. KermitBaike's avatar KermitBaike says:

    https://freshpharm24.com/product/viagra online pharmacy no prescription

  20. Kevinnonna's avatar Kevinnonna says:

    https://freshpharm24.com/ online pharmacy discount code

  21. Davidmeems's avatar Davidmeems says:

    В этой статье представлен занимательный и актуальный контент, который заставит вас задуматься. Мы обсуждаем насущные вопросы и проблемы, а также освещаем истории, которые вдохновляют на действия и изменения. Узнайте, что стоит за событиями нашего времени!
    Связаться за уточнением – наркология вывод из запоя в стационаре спб

  22. binance's avatar binance says:

    I don’t think the title of your article matches the content lol. Just kidding, mainly because I had some doubts after reading the article. https://accounts.binance.info/es-MX/register?ref=GJY4VW8W

  23. Brucemab's avatar Brucemab says:

    Домашний вызов нарколога удобен в случаях, когда человеку тяжело ехать в клинику, он отказывается от поездки или родственники хотят как можно быстрее заказать медицинскую помощь на месте. Формат выезда позволяет врачу оценить самочувствие, определить тяжесть состояния и подобрать дальнейшую тактику. Если ситуация требует расширенного подхода, может обсуждаться последующая консультация в центре, лечение алкоголизма, кодирование, а в более сложных случаях — длительная реабилитация.
    Исследовать вопрос подробнее – запой нарколог на дом

  24. MatthewMob's avatar MatthewMob says:

    Существует ряд ситуаций, при которых вызов специалиста на дом является обоснованным решением:
    Детальнее – нарколог на дом в нижнем новгороде

  25. Aaronseant's avatar Aaronseant says:

    В этой статье собраны факты, которые освещают целый ряд важных вопросов. Мы стремимся предложить читателям четкую, достоверную информацию, которая поможет сформировать собственное мнение и лучше понять сложные аспекты рассматриваемой темы.
    Почему это важно? – психиатр нарколог на дом на

  26. GemstoneRO Servers is one of the best Ragnarok Online private servers in 2026, offering two free RO servers: Renewal with EP21 Age of Heroes, chapter 1, chapter2 4th jobs, Doram, latest skills and mid rates, and Loki Pre-Renewal with classic gameplay, custom quests, unique gear and 100x rates. Play on PC or Android with an active global community, low-latency proxies, weekly updates and no paytowin. Join GemstoneRO and enjoy Ragnarok Online your way.

  27. Martinloaby's avatar Martinloaby says:

    Когда симптомы становятся настолько выраженными, что они мешают нормальному функционированию, капельница становится необходимостью. Она помогает избавиться от дискомфорта и значительно ускоряет процесс восстановления, давая организму все необходимые вещества для нормализации его работы, при этом может проводиться наркологическая детоксикация. Контроль врача на протяжении всей процедуры гарантирует, что капельница будет введена правильно и безопасно, с учетом всех показателей пациента, а при необходимости можно заказать дальнейшую реабилитацию и кодирование.
    Изучить вопрос глубже – капельница от похмелья на дом самара

  28. ShaneHok's avatar ShaneHok says:

    Процесс лечения в «ВолгаМед Баланс» выстроен логично и последовательно. Каждый этап направлен на достижение конкретных медицинских и психологических целей. Ниже приведена таблица, описывающая ключевые стадии терапии.
    Получить дополнительную информацию – наркологическая клиника стационар в тольятти

  29. RobertMen's avatar RobertMen says:

    https://easyindiameds.shop/# india online pharmacy

  30. Georgeagofs's avatar Georgeagofs says:

    Эта публикация исследует взаимосвязь зависимости и психологии. Мы обсудим, как психологические аспекты влияют на появление зависимостей и процесс выздоровления. Читатели смогут понять важность профессиональной поддержки и применения научных подходов в терапии.
    Узнать напрямую – лечение алкогольной зависимости в нижнем новгороде

  31. KennethJoync's avatar KennethJoync says:

    Этот краткий обзор предлагает сжатую информацию из области медицины, включая ключевые факты и последние новости. Мы стремимся сделать информацию доступной и понятной для широкой аудитории, что позволит читателям оставаться в курсе актуальных событий в здравоохранении.
    Интересует подробная информация – капельницы от запоя на дому цена

  32. Calebhit's avatar Calebhit says:

    Эта статья подробно расскажет о процессе выздоровления, который включает в себя эмоциональную, физическую и психологическую реабилитацию. Мы обсуждаем значимость поддержки и наличие профессиональных программ. Читатели узнают, как строить новую жизнь и не возвращаться к старым привычкам.
    Нажми и узнай всё – капельница от похмелья на дому

  33. Davidrew's avatar Davidrew says:

    Предлагаем вашему вниманию интересную справочную статью, в которой собраны ключевые моменты и нюансы по актуальным вопросам. Эта информация будет полезна как для профессионалов, так и для тех, кто только начинает изучать тему. Узнайте ответы на важные вопросы и расширьте свои знания!
    Получить дополнительные сведения – прокапаться в в самаре

  34. Charleschait's avatar Charleschait says:

    Вывод из запоя в стационаре в Санкт-Петербурге: профессиональное лечение, капельницы и контроль состояния пациента в наркологической клинике «Элегия Мед».
    Изучить вопрос глубже – нарколог вывод из запоя в стационаре

  35. DannyFudge's avatar DannyFudge says:

    В этой статье мы подробно рассматриваем проверенные методы борьбы с зависимостями, включая психотерапию, медикаментозное лечение и поддержку со стороны общества. Мы акцентируем внимание на важности комплексного подхода и возможности успешного восстановления для людей, столкнувшихся с этой проблемой.
    Изучить эмпирические данные – прокапаться от алкоголя на дому самара цена

  36. DavidBrask's avatar DavidBrask says:

    Предлагаем вашему вниманию интересную справочную статью, в которой собраны ключевые моменты и нюансы по актуальным вопросам. Эта информация будет полезна как для профессионалов, так и для тех, кто только начинает изучать тему. Узнайте ответы на важные вопросы и расширьте свои знания!
    Всё, что нужно знать – вызов нарколога на дом в москве

  37. MichaelOpecy's avatar MichaelOpecy says:

    Эта обзорная заметка содержит ключевые моменты и факты по актуальным вопросам. Она поможет читателям быстро ориентироваться в теме и узнать о самых важных аспектах сегодня. Получите краткий курс по современной информации и оставайтесь в курсе событий!
    Тыкай сюда — узнаешь много интересного – услуги нарколога на дому

  38. Jaredadors's avatar Jaredadors says:

    Этот информационный обзор станет отличным путеводителем по актуальным темам, объединяющим важные факты и мнения экспертов. Мы исследуем ключевые идеи и представляем их в доступной форме для более глубокого понимания. Читайте, чтобы оставаться в курсе событий!
    Смотрите также… – врач нарколог выезд на дом цена

  39. Robertscodo's avatar Robertscodo says:

    Если дома нет условий для покоя (ремонт, маленькие дети, шумный двор), мы предложим краткосрочное наблюдение в клинике: отдельный вход, «тихий» коридор, без посторонних вопросов. После стабилизации пациент возвращается домой и продолжает амбулаторный формат с краткими чек-инами по телефону или видеосвязи. Ваша частная жизнь в приоритете: доступ к карте разграничен по ролям, а с семьёй общаемся через одного доверенного человека.
    Изучить вопрос глубже – скорая вывод из запоя в каменске-уральске

  40. BrettDrevy's avatar BrettDrevy says:

    В этой статье-обзоре мы соберем актуальную информацию и интересные факты, которые освещают важные темы. Читатели смогут ознакомиться с различными мнениями и подходами, что позволит им расширить кругозор и глубже понять обсуждаемые вопросы.
    Как достичь результата? – анонимный вывод из запоя

  41. JamesAbnob's avatar JamesAbnob says:

    Реабилитация алкоголиков с поддержкой специалистов в Москве представляет собой важный и сложный процесс, в котором ключевую роль играет профессиональное вмешательство. Программы реабилитации включают в себя не только медицинскую помощь, но и психологическую, социальную и эмоциональную поддержку, что способствует успешному и долгосрочному восстановлению пациента. Такая комплексная помощь является основой эффективного лечения и предотвращения рецидивов.
    Детальнее – http://reabilitacziya-alkogolikov-moskva-1.ru/

  42. KennethEmbef's avatar KennethEmbef says:

    https://cialis.sbs/# Buy Cialis online

  43. Robertmaype's avatar Robertmaype says:

    Cialis 20mg price in USA Cialis 20mg price in USA cialis for sale

  44. Josephfiels's avatar Josephfiels says:

    Публикация приглашает вас исследовать неизведанное — от древних тайн до современных достижений науки. Вы узнаете, как случайные находки превращались в революции, а смелые мысли — в новые эры человеческого прогресса.
    Интересует подробная информация – вывод из запоя на дому воронеж

  45. Jasonkex's avatar Jasonkex says:

    В этом обзорном материале представлены увлекательные детали, которые находят отражение в различных аспектах жизни. Мы исследуем непонятные и интересные моменты, позволяя читателю увидеть картину целиком. Погрузитесь в мир знаний и удивительных открытий!
    А что дальше? – вывести из запоя воронеж

  46. Samuelelobe's avatar Samuelelobe says:

    За выездом врача обращаются в тех случаях, когда человеку тяжело добраться до клиники, он ослаблен после нескольких дней употребления спиртного или родственникам важно быстрее получить медицинскую консультацию на месте. После осмотра определяют, допустим ли домашний формат, требуется ли капельница, достаточно ли наблюдения на дому или нужен другой объем помощи. Если эпизоды повторяются, в дальнейшем могут обсуждаться лечение алкоголизма, кодирование, участие психолога, реабилитация и более широкая программа помощи при зависимости. Уже на этапе первичного обращения нередко уточняют, как вызвать специалиста, какие услуги доступны на дому и в каких случаях вывод из запоя рассматривают не дома, а в стационаре.
    Выяснить больше – запой нарколог на дом

  47. Kevinnuh's avatar Kevinnuh says:

    Публикация приглашает вас исследовать неизведанное — от древних тайн до современных достижений науки. Вы узнаете, как случайные находки превращались в революции, а смелые мысли — в новые эры человеческого прогресса.
    Где можно узнать подробнее? – вывод из запоя с выездом

Leave a Reply

Your email address will not be published. Required fields are marked *