Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Oleh Daniel Roth, Rick Anderson, dan Shaun Luttin
Catatan
Ini bukan versi terbaru dari artikel ini. Untuk rilis saat ini, lihat versi .NET 9 dari artikel ini.
Peringatan
Versi ASP.NET Core ini tidak lagi didukung. Untuk informasi selengkapnya, lihat Kebijakan Dukungan .NET dan .NET Core. Untuk rilis saat ini, lihat versi .NET 9 dari artikel ini.
Penting
Informasi ini berkaitan dengan produk pra-rilis yang mungkin dimodifikasi secara substansial sebelum dirilis secara komersial. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Untuk rilis saat ini, lihat versi .NET 9 dari artikel ini.
ASP.NET Core adalah kerangka kerja lintas platform berkinerja tinggi untuk membangun aplikasi web modern. Kerangka kerja sumber terbuka ini memungkinkan pengembang untuk membuat aplikasi web, layanan, dan API yang dapat berjalan di Windows, macOS, dan Linux. Ini dibangun untuk pengembangan aplikasi skala besar dan dapat menangani beban kerja ukuran apa pun, menjadikannya pilihan yang kuat untuk aplikasi tingkat perusahaan.
Dengan ASP.NET Core, Anda dapat:
- Bangun aplikasi dan layanan web, aplikasi Azure IoT (Internet of Things), 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:
- Kisah terpadu untuk membangun antarmuka pengguna web dan API web.
- Dirancang untuk dapat diuji.
- Blazor memungkinkan Anda menggunakan C# di browser bersama JavaScript. Bagikan logika aplikasi sisi server dan sisi klien yang semuanya ditulis dengan .NET.
- Razor Halaman membuat skenario yang berfokus pada halaman pengkodian lebih mudah dan lebih produktif.
- Kemampuan untuk mengembangkan dan menjalankan di Windows, macOS, dan Linux.
- Sumber terbuka dan berfokus pada komunitas.
- Integrasi kerangka kerja dan alur kerja pengembangan sisi klien modern .
- Dukungan untuk menghosting layanan Panggilan Prosedur Jarak Jauh (RPC) menggunakan gRPC.
- Sistem konfigurasi berbasis lingkungan yang siap untuk cloud.
- Injeksi dependensi bawaan.
- Alur permintaan HTTP yang ringan, berkinerja tinggi, dan modular.
- Kemampuan untuk meng-host pada yang berikut:
- Penerapan versi berdampingan.
- Alat yang menyederhanakan pengembangan web modern.
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.
- Blazor, kerangka kerja UI web berbasis komponen berdasarkan C# yang mendukung penyajian sisi server dan penyajian sisi klien melalui WebAssembly.
- Razor Halaman adalah model pemrograman berbasis halaman yang membuat membangun UI web lebih mudah dan lebih produktif.
- Razor markup menyediakan sintaks produktif untuk Razor tampilan Pages dan MVC.
- Pembantu Tag memungkinkan kode sisi server untuk berpartisipasi dalam membuat dan merender elemen HTML dalam Razor file.
- 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 target kerja 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:
- Lintas-Platform Berjalan di Windows, macOS, dan Linux.
- Meningkatkan performa
- versi berdampingan
- API baru
- Sumber terbuka
Jalur pembelajaran yang direkomendasikan
Kami merekomendasikan urutan tutorial berikut untuk pengenalan pengembangan aplikasi ASP.NET Core:
Ikuti tutorial untuk jenis aplikasi yang ingin Anda kembangkan atau pertahankan.
Jenis aplikasi Skenario Panduan Aplikasi web Pengembangan UI web sisi klien Mulai menggunakan Blazor Aplikasi web Pengembangan UI web sisi server baru Mulai menggunakan Razor Pages Aplikasi web Memelihara aplikasi MVC Mulai menggunakan MVC API Web Layanan HTTP RESTful Membuat API web† Aplikasi Panggilan Prosedur Jarak Jauh Layanan berbasis kontrak pertama menggunakan Protocol Buffers Mulai menggunakan layanan gRPC Aplikasi waktu nyata Komunikasi dua arah antara server dan klien yang terhubung Mulai menggunakan SignalR Ikuti tutorial yang menunjukkan cara melakukan akses data dasar.
Skenario Panduan Pengembangan baru Blazor dengan Entity Framework Core Pengembangan baru Razor Halaman dengan Entity Framework Core Memelihara aplikasi MVC MVC dengan Entity Framework Core Baca gambaran umum dasar-dasar ASP.NET Core yang berlaku untuk semua jenis aplikasi.
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 Migrasi dari ASP.NET Framework 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:
- Bangun aplikasi dan layanan web, aplikasi Azure IoT (Internet of Things), dan backend seluler.
- Gunakan alat pengembangan favorit Anda di Windows, macOS, dan Linux.
- Sebarkan ke cloud atau lokal.
- Jalankan pada .NET Core atau .NET Framework.
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 dari ASP.NET 4.x, dengan perubahan arsitektur yang menghasilkan kerangka kerja yang lebih ramping dan lebih modular.
ASP.NET Core memberikan manfaat berikut:
- Kisah terpadu untuk membangun antarmuka pengguna web dan API web.
- Dirancang untuk dapat diuji.
- Blazor memungkinkan Anda menggunakan C# di browser bersama JavaScript. Bagikan logika aplikasi sisi server dan sisi klien yang semuanya ditulis dengan .NET.
- Razor Halaman membuat skenario yang berfokus pada halaman pengkodian lebih mudah dan lebih produktif.
- Kemampuan untuk mengembangkan dan menjalankan di Windows, macOS, dan Linux.
- Sumber terbuka dan berfokus pada komunitas.
- Integrasi kerangka kerja dan alur kerja pengembangan sisi klien modern .
- Dukungan untuk menghosting layanan Panggilan Prosedur Jarak Jauh (RPC) menggunakan gRPC.
- Sistem konfigurasi berbasis lingkungan yang siap untuk cloud.
- Injeksi dependensi bawaan.
- Alur permintaan HTTP yang ringan, berkinerja tinggi, dan modular.
- Kemampuan untuk meng-host pada yang berikut:
- Penerapan versi berdampingan.
- Alat yang menyederhanakan pengembangan web modern.
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.
- Razor markup menyediakan sintaks produktif untuk Razor tampilan Pages dan MVC.
- Pembantu Tag memungkinkan kode sisi server untuk berpartisipasi dalam membuat dan merender elemen HTML dalam Razor file.
- 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 mulus 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:
- Lintas-Platform Berjalan di macOS, Linux, dan Windows.
- Meningkatkan performa
- versi berdampingan
- API baru
- Sumber terbuka
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.
Jalur pembelajaran yang direkomendasikan
Kami merekomendasikan urutan tutorial dan artikel berikut untuk pengenalan pengembangan aplikasi ASP.NET Core:
Ikuti tutorial untuk jenis aplikasi yang ingin Anda kembangkan atau pertahankan.
Jenis aplikasi Skenario Panduan Aplikasi web Untuk pengembangan baru Mulai menggunakan Razor Pages Aplikasi web Untuk memelihara aplikasi MVC Mulai menggunakan MVC API Web Membuat API web† Aplikasi waktu nyata Mulai menggunakan SignalR Ikuti tutorial yang menunjukkan cara melakukan akses data dasar.
Skenario Panduan Untuk pengembangan baru Razor Halaman dengan Entity Framework Core Untuk memelihara aplikasi MVC MVC dengan Entity Framework Core Baca gambaran umum dasar-dasar ASP.NET Core yang berlaku untuk semua jenis aplikasi.
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 Migrasi dari ASP.NET Framework ke ASP.NET Core.
Cara mengunduh sampel
Banyak artikel dan tutorial menyertakan tautan ke kode sampel.
- Unduh file zip repositori ASP.NET.
- Ekstrak file
AspNetCore.Docs-main.zip
. - 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 agar dapat menjalankan ExpandDefault
skenario tersebut, tentukan simbol ExpandDefault
dan biarkan simbol yang tersisa dalam bentuk komentar.
#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 signifikan dan pemberitahuan keamanan diumumkan di repositori Pengumuman. Pengumuman dapat dibatasi pada versi tertentu dengan memilih filter Label .
Langkah berikutnya
Untuk informasi selengkapnya, lihat sumber daya berikut:
- Mulai menggunakan Blazor
- Mulai menggunakan ASP.NET Core
- Menerbitkan aplikasi ASP.NET Core ke Azure dengan Visual Studio
- dasar-dasar ASP.NET Core
- Standup komunitas ASP.NET mingguan mencakup kemajuan dan rencana tim. Ini mencakup blog baru dan perangkat lunak pihak ketiga.
ASP.NET Core