Gambaran umum ASP.NET Core

Oleh Daniel Roth, Rick Anderson, dan Shaun Luttin

ASP.NET Core adalah kerangka kerja lintas platform, berkinerja tinggi, sumber terbuka untuk membangun aplikasi modern yang didukung cloud, yang terhubung ke Internet.

Dengan ASP.NET Core, Anda dapat:

  • Bangun aplikasi dan layanan web, aplikasi Internet of Things (IoT), dan backend seluler.
  • Gunakan alat pengembangan favorit Anda di Windows, macOS, dan Linux.
  • Sebarkan ke cloud atau lokal.
  • Jalankan di .NET.

Mengapa memilih ASP.NET Core?

Jutaan pengembang menggunakan atau telah menggunakan ASP.NET 4.x untuk membuat aplikasi web. ASP.NET Core adalah desain ulang ASP.NET 4.x, termasuk perubahan arsitektur yang menghasilkan kerangka kerja yang lebih ramping dan lebih modular.

ASP.NET Core memberikan manfaat berikut:

Membangun API web dan UI web menggunakan ASP.NET Core MVC

ASP.NET Core MVC menyediakan fitur untuk membangun API web dan aplikasi web:

  • Pola Model-View-Controller (MVC) membantu membuat API web dan aplikasi web Anda dapat diuji.
  • Razor Halaman adalah model pemrograman berbasis halaman yang membuat membangun UI web lebih mudah dan lebih produktif.
  • Razormarkup menyediakan sintaks produktif untuk Razor tampilan Pages dan MVC.
  • Pembantu Tag mengaktifkan kode sisi server untuk berpartisipasi dalam membuat dan merender elemen HTML dalam file Razor.
  • Dukungan bawaan untuk beberapa format data dan negosiasi konten memungkinkan API web Anda menjangkau berbagai klien, termasuk browser dan perangkat seluler.
  • Pengikatan model secara otomatis memetakan data dari permintaan HTTP ke parameter metode tindakan.
  • Validasi model secara otomatis melakukan validasi sisi klien dan sisi server.

Pengembangan sisi klien

ASP.NET Core termasuk Blazor untuk membangun UI web yang kaya interaktif, dan juga terintegrasi dengan kerangka kerja JavaScript frontend populer lainnya seperti Angular, React, Vue, dan Bootstrap. Untuk informasi selengkapnya, lihat ASP.NET Core Blazor dan topik terkait di bawah Pengembangan sisi klien.

kerangka kerja target ASP.NET Core

ASP.NET Core 3.x atau yang lebih baru hanya dapat menargetkan .NET.

Ada beberapa keuntungan untuk menargetkan .NET, dan keuntungan ini meningkat dengan setiap rilis. Beberapa keuntungan dari .NET melalui .NET Framework meliputi:

Kami merekomendasikan urutan tutorial berikut untuk pengenalan pengembangan aplikasi ASP.NET Core:

  1. Ikuti tutorial untuk jenis aplikasi yang ingin Anda kembangkan atau pertahankan.

    Jenis aplikasi Skenario Tutorial
    Aplikasi web Pengembangan UI web sisi server baru Mulai menggunakan Razor Pages
    Aplikasi web Memelihara aplikasi MVC Mulai menggunakan MVC
    Aplikasi web Pengembangan UI web sisi klien Mulai menggunakan Blazor
    API Web RESTlayanan HTTP yang ful Membuat API web†
    Aplikasi Panggilan Prosedur Jarak Jauh Layanan pertama kontrak menggunakan Buffer Protokol Mulai menggunakan layanan gRPC
    Aplikasi real time Komunikasi dua arah antara server dan klien yang terhubung Mulai menggunakan SignalR
  2. Ikuti tutorial yang menunjukkan cara melakukan akses data dasar.

    Skenario Tutorial
    Pengembangan baru Razor Halaman dengan Entity Framework Core
    Memelihara aplikasi MVC MVC dengan Entity Framework Core
  3. Baca gambaran umum dasar-dasar ASP.NET Core yang berlaku untuk semua jenis aplikasi.

  4. Telusuri daftar isi untuk topik menarik lainnya.

† Tutorial API web interaktif juga. Tidak diperlukan penginstalan lokal alat pengembangan. Kode berjalan di Azure Cloud Shell di browser Anda, dan curl digunakan untuk pengujian.

Bermigrasi dari .NET Framework

Untuk panduan referensi untuk memigrasikan aplikasi ASP.NET 4.x ke ASP.NET Core, lihat Memperbarui dari ASP.NET ke ASP.NET Core.

ASP.NET Core adalah kerangka kerja lintas platform, berkinerja tinggi, sumber terbuka untuk membangun aplikasi modern yang didukung cloud, yang terhubung ke Internet. Dengan ASP.NET Core, Anda dapat:

Mengapa memilih ASP.NET Core?

Jutaan pengembang menggunakan atau telah menggunakan ASP.NET 4.x untuk membuat aplikasi web. ASP.NET Core adalah desain ulang ASP.NET 4.x, dengan perubahan arsitektur yang menghasilkan kerangka kerja modular yang lebih ramping dan lebih banyak.

ASP.NET Core memberikan manfaat berikut:

Membangun API web dan UI web menggunakan ASP.NET Core MVC

ASP.NET Core MVC menyediakan fitur untuk membangun API web dan aplikasi web:

  • Pola Model-View-Controller (MVC) membantu membuat API web dan aplikasi web Anda dapat diuji.
  • Razor Halaman adalah model pemrograman berbasis halaman yang membuat membangun UI web lebih mudah dan lebih produktif.
  • Razormarkup menyediakan sintaks produktif untuk Razor tampilan Pages dan MVC.
  • Pembantu Tag mengaktifkan kode sisi server untuk berpartisipasi dalam membuat dan merender elemen HTML dalam file Razor.
  • Dukungan bawaan untuk beberapa format data dan negosiasi konten memungkinkan API web Anda menjangkau berbagai klien, termasuk browser dan perangkat seluler.
  • Pengikatan model secara otomatis memetakan data dari permintaan HTTP ke parameter metode tindakan.
  • Validasi model secara otomatis melakukan validasi sisi klien dan sisi server.

Pengembangan sisi klien

ASP.NET Core terintegrasi dengan lancar dengan kerangka kerja dan pustaka sisi klien populer, termasuk Blazor, Angular, React, Vue, dan Bootstrap. Untuk informasi selengkapnya, lihat ASP.NET Core Blazor dan topik terkait di bawah Pengembangan sisi klien.

ASP.NET Core menargetkan .NET Framework

ASP.NET Core 2.x dapat menargetkan .NET Core atau .NET Framework. aplikasi ASP.NET Core yang menargetkan .NET Framework bukan lintas platform—hanya berjalan di Windows. Umumnya, ASP.NET Core 2.x terdiri dari pustaka .NET Standard . Pustaka yang ditulis dengan .NET Standard 2.0 berjalan pada platform .NET apa pun yang mengimplementasikan .NET Standard 2.0.

ASP.NET Core 2.x didukung pada versi .NET Framework yang menerapkan .NET Standard 2.0:

  • Versi terbaru .NET Framework disarankan.
  • .NET Framework 4.6.1 atau yang lebih baru.

ASP.NET Core 3.0 atau yang lebih baru hanya berjalan pada .NET Core. Untuk detail selengkapnya mengenai perubahan ini, lihat Melihat perubahan pertama yang masuk ASP.NET Core 3.0.

Ada beberapa keuntungan untuk menargetkan .NET Core, dan keuntungan ini meningkat dengan setiap rilis. Beberapa keuntungan dari .NET Core daripada .NET Framework meliputi:

Untuk membantu menutup celah API dari .NET Framework ke .NET Core, Paket Kompatibilitas Windows membuat ribuan API khusus Windows tersedia di .NET Core. API ini tidak tersedia di .NET Core 1.x.

Kami merekomendasikan urutan tutorial dan artikel berikut untuk pengenalan pengembangan aplikasi ASP.NET Core:

  1. Ikuti tutorial untuk jenis aplikasi yang ingin Anda kembangkan atau pertahankan.

    Jenis aplikasi Skenario Tutorial
    Aplikasi web Untuk pengembangan baru Mulai menggunakan Razor Pages
    Aplikasi web Untuk memelihara aplikasi MVC Mulai menggunakan MVC
    API Web Membuat API web†
    Aplikasi real time Mulai menggunakan SignalR
  2. Ikuti tutorial yang menunjukkan cara melakukan akses data dasar.

    Skenario Tutorial
    Untuk pengembangan baru Razor Halaman dengan Entity Framework Core
    Untuk memelihara aplikasi MVC MVC dengan Entity Framework Core
  3. Baca gambaran umum dasar-dasar ASP.NET Core yang berlaku untuk semua jenis aplikasi.

  4. Telusuri Daftar Isi untuk topik lain yang menarik.

† Tutorial API web juga yang Anda ikuti sepenuhnya di browser, tidak diperlukan penginstalan IDE lokal. Kode berjalan di Azure Cloud Shell, dan curl digunakan untuk pengujian.

Bermigrasi dari .NET Framework

Untuk panduan referensi untuk memigrasikan aplikasi ASP.NET ke ASP.NET Core, lihat Memperbarui dari ASP.NET ke ASP.NET Core.

Cara mengunduh sampel

Banyak artikel dan tutorial menyertakan tautan ke kode sampel.

  1. Unduh file zip repositori ASP.NET.
  2. Ekstrak file AspNetCore.Docs-main.zip.
  3. Untuk mengakses aplikasi sampel artikel di repositori yang tidak di-zip, gunakan URL di tautan sampel artikel untuk membantu Anda menavigasi ke folder sampel. Biasanya, tautan sampel artikel muncul di bagian atas artikel dengan teks tautan Lihat atau unduh kode sampel.

Arahan pra-prosesor dalam kode sampel

Untuk menunjukkan beberapa skenario, aplikasi sampel menggunakan arahan #define prapemrosan dan #if-#else/#elif-#endif untuk mengkompilasi dan menjalankan bagian kode sampel yang berbeda secara selektif. Untuk sampel yang menggunakan pendekatan ini, atur #define direktif di bagian atas file C# untuk menentukan simbol yang terkait dengan skenario yang ingin Anda jalankan. Beberapa sampel memerlukan penentuan simbol di bagian atas beberapa file untuk menjalankan skenario.

Misalnya, daftar simbol berikut #define menunjukkan bahwa empat skenario tersedia (satu skenario per simbol). Konfigurasi sampel saat ini menjalankan TemplateCode skenario:

#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode

Untuk mengubah sampel untuk menjalankan ExpandDefault skenario, tentukan ExpandDefault simbol dan biarkan simbol yang tersisa dikomentari:

#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode

Untuk informasi selengkapnya tentang menggunakan arahan praprosesor C# untuk mengkompilasi bagian kode secara selektif, lihat #define (Referensi C#) dan #if (Referensi C#).

Melanggar perubahan dan saran keamanan

Perubahan yang melanggar dan saran keamanan dilaporkan pada repositori Pengumuman. Pengumuman dapat dibatasi pada versi tertentu dengan memilih filter Label .

Langkah berikutnya

Untuk informasi selengkapnya, lihat sumber daya berikut: