-->
ZDIRY-TUFWT-EBONM-EYJ00-IDBLANTER.COM
ZDIRY-TUFWT-EBONM-EYJ00

BLANTERWISDOM105

Membuat WEB API ASP NET Visual Studio

10/01/2020

Pendahuluan

Tutorial ini akan menjelaskan alur cara membuat projek WEB API sederhana menggunakan Visual Studio 2012 dan hasilnya dapat di panggil menggunakan T-SQL di sql server berdasarkan url localhost dengan port tertentu atau biasa disebut How to Call API. Jika anda seorang pemula dan tidak tahu cara membuat projek Web API, artikel ini akan membantu anda membuat projek API dengan Langkah yang detail dan mudah dipahami hanya dengan pengetahuan C# dasar.

Langkah-langkah Membuat Web API Menggunakan Visual Studio 2012

Setelah membuka visual studio, cukup klik File >> New >> Project. Dan pilih templates >> Web >> ASP NET MVC Web Application. Berikan Name: WebApiDemo1 (terserah), Location: Lokasi penyimpanan file projek.

Selanjutnya pilih projek template Web API

Setelah melakukan semua hal yang disebutkan di atas, cukup klik OK dan itu akan membuat proyek Web API Anda, yang kemudian, Anda dapat menyesuaikan berdasarkan kebutuhan Anda. Setelah proyek dibuat dan Anda mengklik Solution Explorer, Anda akan melihat struktur proyek di bawah ini yang datang untuk template API Web.

Sekarang expand pada folder Controllers dan modifikasi HomeControllers.cs menjadi,

using System;
using System.Net;
using System.Collections.Generic;
using System.Web.Http;
using WebAPIDemo1.Models; 

namespace WebAPIDemo1.Controllers
{
    public class HomeController : ApiController
    {
        public IEnumerable<Product> GetItems()
        {
            IList<Product> products = new List<Product>  
            {  
                new Product  
                {  
                    productName = "Biscuits",  
                    manufacturingYear = 2018,  
                    brandName="ParleG"  
                },  
                new Product  
                {  
                    productName = "Cars",  
                    manufacturingYear = 2018,  
                    brandName="BMW"  
                },  
                new Product  
                {  
                    productName = "Cars",  
                    manufacturingYear = 2018,  
                    brandName="Mercedese"  
                },  
                new Product  
                {  
                    productName = "Brush",  
                    manufacturingYear = 2017,  
                    brandName="Colgate"  
                }  
  
            };

            return products;
        }
    }
}

Kita akan membuat metode API yang Ketika dipanggil akan mengembalikan list produk. Disini, kita juga dapat menuliskan logika untuk mengambil nilai-nilai dari database. Untuk tetap menjaga tetap sederhana, saya telah menggunakan nilai hardcode.

Sebelum melakukan ini, buat clase mode Product.cs yang dapat Anda gunakan di Controller. 


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace WebAPIDemo1.Models
{
    public class Product
    {
        public string productName { get; set; }
        public int manufacturingYear { get; set; }
        public string brandName { get; set; }
    }
}

Saya akan memberi tahu anda tentang file utama yang perlu anda ubah sebelum menjalankan WEB API ini yaitu file WebApiConfig.cs. Karena file ini penting karena berhubungan cara memanggil motode di controller melalui web browser. Secara teknis, ubahlah konfigurasinya seperti di bawah ini,


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Http;
using System.Web;

namespace WebAPIDemo1
{
    public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            // Web API configuration and services  
            // Web API routes  
            //config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );

            // Here: 
            //config.IncludeErrorDetailPolicy = IncludeErrorDetailPolicy.Always;
        }
    }
}

Setelah ini selesai, jalankan projek WEB API dengan solution configurationnya debug atau dapat dengan menekan CTRL + F5 maka akan membuka jendela browser seperti di bawah ini,

Untuk melihat hasil sebenarnya, kita perlu mengubah URL kita sesuai dengan jalur yang diberikan di WebApiConfig.cs. Jadi, jika Anda mau, Anda akan melihat hasil sukses dalam bentuk XML seperti di bawah ini. http://localhost:56841/api/home/getitems

Panggil Web API Menggunakan T-SQL Server

Pada sebelumnya saya telah memberikan urlnya. Url tersebut akan digunakan pada script t-sql sehingga dapat menghasilkan lampiran data yang diperoleh. 


Declare @Object as Int;
DECLARE @hr  int
Declare @json as table(Json_Table nvarchar(max))

Exec @hr=sp_OACreate 'MSXML2.ServerXMLHTTP.6.0', @Object OUT;
IF @hr <> 0 EXEC sp_OAGetErrorInfo @Object
Exec @hr=sp_OAMethod @Object, 'open', NULL, 'get',
                 'http://localhost:56841/api/home/getitems', --Your Web Service Url (invoked)
                 'false'
IF @hr <> 0 EXEC sp_OAGetErrorInfo @Object
Exec @hr=sp_OAMethod @Object, 'send'
IF @hr <> 0 EXEC sp_OAGetErrorInfo @Object
Exec @hr=sp_OAMethod @Object, 'responseText', @json OUTPUT
IF @hr <> 0 EXEC sp_OAGetErrorInfo @Object

INSERT into @json (Json_Table) exec sp_OAGetProperty @Object, 'responseText'
-- select the JSON string
select * from @json
-- Parse the JSON string
SELECT *
FROM OPENJSON((select * from @json))
  WITH (
    [productName] varchar(50) '$.productName',
    [manufacturingYear] int '$.manufacturingYear',
    [brandName] NVARCHAR(50) '$.brandName'
  );
EXEC sp_OADestroy @Object

Dari script tersebut didapat kan sebuat hasil sebagai berikut;

Kesimpulan

Dengan menggunakan langkah-langkah sederhana, Anda telah belajar di sini cara membuat proyek Web API menggunakan Visual Studio 2012. Kami telah membahas secara detail sehingga Anda tidak menghadapi kesulitan apa pun. Jika Anda memiliki pertanyaan tentang ini, tulislah di bagian komentar dan juga jika itu membantu Anda di suatu tempat, Anda dapat meninggalkan umpan balik Anda.

Share This :

0 Comments