Apa sebenarnya perbedaan antara .NET Core dan ASP.NET Core?
Apakah mereka saling eksklusif? Saya mendengar ASP.NET Core dibangun di atas. NET Core, tetapi juga dapat dibangun di atas kerangka NET penuh.
Jadi apa sebenarnya ASP.NET Core?
Apa sebenarnya perbedaan antara .NET Core dan ASP.NET Core?
Apakah mereka saling eksklusif? Saya mendengar ASP.NET Core dibangun di atas. NET Core, tetapi juga dapat dibangun di atas kerangka NET penuh.
Jadi apa sebenarnya ASP.NET Core?
Jawaban:
Pembaruan 2020 : Perhatikan bahwa ASP.NET Core 3 dan yang lebih tinggi sekarang bergantung pada .NET Core dan tidak lagi dapat digunakan pada .NET Framework. Deskripsi di bawah ini adalah untuk ASP.NET Core 1.x-2.x; pemisahan lapisan masih berlaku untuk ASP.NET Core 3.0 tetapi lapisan ASP.NET Core tidak lagi dapat digunakan di atas .NET Framework di 3.0+.
.NET Core adalah runtime. Itu dapat menjalankan aplikasi yang dibangun untuk itu.
ASP.NET Core adalah kumpulan perpustakaan yang membentuk Kerangka untuk membangun aplikasi web. ASP.NET Core libraries dapat digunakan pada .NET Core dan "Full .NET Framework" (yang telah dikirimkan bersama windows selama bertahun-tahun).
Bagian yang membingungkan adalah bahwa aplikasi yang menggunakan pustaka dan alat ASP.NET Core biasanya disebut sebagai "ASP.NET Core Application", yang secara teori tidak mengatakan apakah itu dibangun untuk .NET Core atau .NET Framework. Jadi "ASP.NET Core Application" juga merupakan ".NET Core Application" atau ".NET Framework Application".
Gambar ini menunjukkan hubungan teknologi yang terlibat (diambil dari posting blog ini )
Di sini Anda dapat melihat bahwa ASP.NET Core dibangun "di atas" .NET Framework dan .NET Core, sementara "ASP.NET" (sekarang sering disebut sebagai "ASP.NET klasik") adalah .NET Framework saja.
ASP.NET Core
maka pada server web kita perlu menginstal .NET Core Runtime
dan ASP.NET Core runtime
atau hanya ASP.NET Core runtime
cukup
ASP.NET Core menggunakan .NET Core - semua dependensi mandiri, dapat menggunakan sebagian besar paket NuGet, tidak dapat menggunakan paket khusus Windows, dapat dijalankan di Windows, Linux, dan Mac.
ASP.NET Core menggunakan .NET Framework - sebagian besar dependensi mandiri, hanya dijalankan pada Windows, akan memiliki akses ke paket NuGet khusus Windows, memerlukan versi .NET framework yang ditargetkan dipasang pada mesin.
ASP.NET Core adalah salah satu beban kerja yang didukung oleh .NET Core.
Dari .NET Core guide :
Dengan sendirinya, .NET Core mencakup model aplikasi tunggal - aplikasi konsol - yang berguna untuk alat, layanan lokal, dan game berbasis teks. Model aplikasi tambahan telah dibangun di atas .NET Core untuk memperluas fungsinya, seperti:
- ASP.NET Core
- Windows 10 Universal Windows Platform (UWP)
- Xamarin. Bentuk
.NET Framework sedang dalam rilis terakhir. Tidak akan ada yang lain setelah 4.8. Microsoft akan melanjutkan dengan .NET Core. Mulai saat ini Anda harus memilih .NET Core pada proyek Anda.
Selain itu, saya ingin menambahkan yang mungkin bisa membantu seseorang.
Ada sesuatu yang disebut injeksi middleware di .NET Core request pipeline. Jika diterapkan dengan benar, ini sangat berguna, karena dapat mencegat pengecualian aplikasi secara otomatis dan membuat pencatatan jauh lebih mudah di satu tempat daripada masuk dalam setiap metode.