ASP.NET merupakan komponen Internet Information Services (IIS).[2] Oleh karena itu, untuk menginstalasikan ASP, harus juga menginstalasikan IIS.[2] ASP.NET adalah komponen utama Window yang membuat IIS dapat menjalankan aplikasi yang berbasiskan .NET.[3]
Harus diperhatikan ASP.NET tidak terinstalasi secara otomatis ketika IIS diinstal. Instalasi yang sukses secara otomatis juga akan menghasilkan beberapa komponen dan sumber daya seperti:[3]
ASP.NET Performance Counter - Tiap versi ASP.NET memiliki performance center yang berbeda.
ASP.NET State Service - Digunakan untuk mengatur session state. Semua versi ASP.NET akan menggunakan State Service yang sama yaitu yang disediakan oleh versi terbaru.
ASPNET local user account - pada komputer yang berdiri sendiri ataupun member server local user acount bernama ASPNET akan dibuat ketika ASP.NET diinstal.
Penyederhanaan. ASP.NET membuat mudah tugas umum seperti pembuatan form, otentikasi client, validasi data, konfigurasi situs, dan deployment.
Perbaikan Performa. Karena ASP.NET dikompilasi ke CLR sehingga performanya lebih baik dari ASP yang interpreter.
Form-form Web. Merupakan model pemrograman baru yang menggabungkan aplikasi ASP dengan kemudahan pengembangan dan produktivitas Visual Basic.
Kode Nonspaghetti. Model pemrograman ASP.NET memisahkan kode dari presentasi sehingga mempermudah membuat konstruksi dan mengelola kode.
Perbaikan Manajemen Status. ASP.NET menyediakan status aplikasi dan sesi yang mudah digunakan. ASP.NET mengatasi keterbatasan tersebut dengan menyediakan dukungan pendistribusian status sesi dalam server web, menaruh informasi status dalam SQL Server, serta menyediakan pengelolaan status tanpa cookies.
Pengamanan. ASP.NET menyediakan layanan otorisasi (menentukan apakah pengguna memiliki izin untuk melakukan tindakan yang diminta) dan otentikasi (menentukan identitas pengguna yang melakukan permintaat) yang telah diperbaiki menggunakan CookieAuthenticationModule dan URLAuthorizationModule.
Konfigurasi. ASP.NET menggunakan file XML untuk menyimpan pengaturan konfigurasi. Hal ini membuat deploymentsitus menjadi lebih mudah.
Layanan Web. ASP.NET dapat digunakan untuk mengekspos fungsi bisnis ke partner melalui protokol Web standar.
Caching. Disediakan mesin caching untuk meningkatkan kinerja aplikasi dan mengurangi beban pemroses server web dan server database.
Debugging. ASP.NET memiliki utilitas tracking yang build-in.
Deployment. Deployment dapat dilakukan dengan cara menyalin file karena semua pengaturan konfigurasi situs terdapat dalam file XML.
Siklus Hidup halaman ASP.NET
Berikut adalah ringkasan siklus hidup halaman ASP.NET:[1]
ASP.NET memeriksa tiap-tiap tag dalam file dan memuat ke dalam memori.
Jika tag berisi atribut runat="server", ASP.NET memuat komponen software yang disebut kontrol server. Nama tag menentukan tipe dari kontrol server.
Tag tanpa atribut runat="server" adalah tag HTML biasa, ASP.NET akan memuatnya kedalam komponen software dan kemudian tag aslinya akan dikirim kembali ke browser client.
Setelah memuat semua tag ke dalam memori, ASP.NET menjalankan kode program dari tiap-tiap kontrol server. Kode ini akan mengakses sumber dari server web, kode dapat mengubah isi atau properti dari kontrol server dihalaman dan dapat juga menambah atau menghilangkan kontrol server.
Ketika semua kode dalam kontrol server selesai dijalankan, ASP.NET secara berurutan memberitahu tiap kontrol untuk me-render dirinya.
Jika tag asli adalah HTML biasa, ASP.NET akan mengirim tanpa memodifikasi.
Jika tag asli yang dibuat adalah kontrol server, ASP.NET akan memanggil method kontrol Render untuk membuat HTML.
Susudah halaman meninggalkan server, ASP.NET melepas kontrol server dan sumber lainnya yang sudah dibuat sebelumnya.
<scriptrunat="server">Subbutton1(SourceAsObject,eAsEventArgs)p1.InnerHtml="You clicked the blue button!"EndSubSubbutton2(SourceAsObject,eAsEventArgs)p1.InnerHtml="You clicked the pink button!"EndSub</script><html><body><formrunat="server"><buttonid="b1"OnServerClick="button1"style="background-color:#e6e6fa;height:25;width:100"runat="server">
Blue button!
</button><buttonid="b2"OnServerClick="button2"style="background-color:#fff0f5;height:25;width:100"runat="server">
Pink button!
</button><pid="p1"runat="server"/></form></body></html>