Heroku adalah layanan cloud yang memungkinkan developer untuk mendeploy, mengatur dan memonitor aplikasi tanpa mengurus kerumitan masalah infrastruktur. Heroku sangat cocok bagi developer atau startup yang ingin menguji produknya karena proses build & deploynya sangat mudah dan murah karena ada paket harga yang gratis (dengan limit tertentu).
Dengan segala kemudahan yang ditawarkan oleh Heroku, akan tetapi Bahasa pemrograman yang disupport tidak terlalu banyak. C# dan ASP .Net Core adalah salah satu yang tidak disupport. Namun tidak usah khawatir, karena Heroku juga memberikan opsi melalui third-party buildpack untuk mengatasi hal itu. Lalu gimana caranya kita sebagai developer .Net jika ingin menggunakan layanan dari Heroku? Berikut step-step nya:
Saat ini performa system merupakan hal yang sangat penting dan perlu diperhatikan bagi para developer. Semakin baik performa suatu system tentu akan membuat pengguna semakin nyaman menggunakannya. Untuk itu developer seperti kita perlu untuk melakukan Benchmark Code.
Apa itu Benchmark?
Benchmark adalah metode/langkah untuk mengukur serangkaian kode yang ada dalam sebuah fungsi. Dengan melakukan benchmark, kita bisa membandingkan kinerja kode mana yang lebih baik sehingga dapat mengoptimalkan system kita.
Untuk melakukan Benchmark Code, kita akan menggunakan tools dari DotNet yaitu BenchmarkDotNet.
Microsoft Graph adalah platform dari Microsoft yang menghubungkan banyak layanan dan perangkat yang sudah disediakan oleh Microsoft. Dengan menggunakan Microsoft Graph, pengembang dapat melakukan integrasi layanan dengan layanan – layanan yang ada di Microsoft 365. Misal dalam tulisan ini saya ingin menggunakan layanan Microsoft Planner untuk membuat Task menggunakan API sendiri.
AutoMapper adalah object to object mapper yang memetakan obyek A menjadi obyek B yang memiliki properti dan tipe yang berbeda. Seperti contoh kita perlu melakukan pemetaan Data Transfer Object ke object model. AutoMapper memudahkan proses pemetaan konvensional yang harus memetakan secara manual satu per satu.
Untuk menggunakan AutoMapper pada ASP .Net Core 3.1 terlebih dahulu harus menginstal AutoMapper melalui NuGet atau command pada NuGet Package Manager seperti ini.
Identity pada ASP.Net Core ada untuk memudahkan kita menambahkan user dan mengatur user management pada website. Bahkan Identity sudah bisa menghandle TwoFactorAuthentication, ExternalLogins dll. Secara default, identity akan membuat user dengan bentuk model seperti berikut.
Bisa kita lihat IdentityUser hanya terdiri dari beberapa property dan tidak bisa kita ubah. Lalu bagaimana jika kita butuh untuk menambah property?
Misalnya kita akan menambah property “Address” pada user, berikut langkahnya
Buat Model Baru
Mari kita buat Model baru yang extend pada IdentityUser
using Microsoft.AspNetCore.Identity;
namespace CustomIdentityUser.Models
{
public class ApplicationUser: IdentityUser
{
public string Address { get; set; }
}
}
Update Database Context
Ubah extend DatabaseContext menjadi “IdentityDbContext<ApplicationUser>”. Sehingga menjadi seperti ini
namespace CustomIdentityUser.Data
{
public class ApplicationDbContext : IdentityDbContext
{
public ApplicationDbContext(DbContextOptions options)
: base(options)
{
}
}
}