بررسی Return Type های Action Method ها در ASP.NET Web API #1

بررسی Return Type های Action Method ها در ASP.NET Web API #1

در این پست از وبسایت پرووید در رابطه با بررسی Return Type های Action Method ها در ASP.NET Web API #1 صحبت خواهیم کرد.

در این قسمت از این آموزش از وب سایت پرووید در رابطه با Return Type های Action Method های درون یک Controller در ASP.NET Web API صحبت می کنیم. منظور از این قضیه نوع های داده ای یا Data Type هایی است که می توانیم از Action Method‌ های درون یک Controller به کلاینت برگرانده یا Return کنیم.

آموزش ساخت Web API در ASP.NET Core 2.0

از شما دعوت می کنیم از بسته ی آموزش ساخت Web API در ASP.NET Core 2.0 دیدن کنید.

در ASP.NET Web API یک Action Method می‌تواند Return Type های مختلفی داشته باشند. چهار مورد از مهمترین آنها عبارتند از:

  1. Void
  2. Primitive type or Complex type
  3. HttpResponseMessage
  4. IHttpActionResult

بررسی Void

دقت کنید که ضرورتی ندارد که تمامی Action Method ها حتماً چیزی را به کلاینت Return کنند. به عبارت دیگر Action Method ها می توانند Void را Return کنند. برای مثال فرض کنید یک Action Method برای انجام عملیات Delete به شکل زیر در درون یک Controller به نام StudentController تعریف شده است.

public class StudentController : ApiController
{
    public void Delete(int id)
    {
        DeleteStudentFromDB(id);
    }
}

همانطور که در تعریف این Action Method می بینید نوع داده ای که Return می شود Void است. بنابراین با صدا زدن این Action Method از درون Postman یک Status Code با مقدار ۲۰۴ یا همان No Content برای کلاینت ارسال می‌شود.

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

از شما دعوت می کنیم که از بسته ی آموزش ویدئویی پیاده سازی امنیت در Web API در ASP.NET Core دیدن کنید.

این موضوع در تصویر زیر نشان داده شده است.

بررسی Primitive Type یا Complex Type

در ASP.NET Web API می توان Return Type های Complex و Primitive برای Action Method ها تنظیم کرد. منظور از Primitive Type ها داده هایی از قبیل int می باشد و منظور از Complex Type ها Type هایی می باشند که یا خود ما آنها را ساخته ایم یا از قبل در دات نت وجود دارند. همانطور که در کد زیر مشاهده می کنید یک Type با نام Student تعریف شده است و Action Method هایی که در درون StudentController تعریف شده اند یک int و Student بر می‌گرداند.

public class Student
{
    public int Id { get; set; }
    public string Name { get; set; }
}

public class StudentController : ApiController
{
    public int GetId(string name)
    {
        int id = GetStudentId(name);
    
        return id;
    }

    public Student GetStudent(int id)
    {
        var student = GetStudentFromDB(id);
    
        return student;
    }
}

Action Method اول که GetId نام دارد int که یک Primitive Type است Return می‌کند و GetStudent یک شی از نوع Student که یک Complex Type است Return می کند. اگر یک Request از نوع HTTP GET به آدرس http://localhost:xxxx/api/student?name=joh ارسال کنیم Response ای که دریافت میکنیم شبیه به تصویر زیر می باشد.

همچنین ارسال یک Request به آدرس http://localhost:xxxx/api/student?id=1 نتیجه زیر را به ما تحویل می دهد.

در قسمت بعدی از این آموزش در رابطه با بررسی HttpResponseMessage صحبت خواهیم کرد.

مرتضی گیتی
بدون نظر

ارسال نظر

نظر
نام
ایمیل
وب سایت