Ç NDEK LER 1 ASP.NET TEMELLER 1 nternet Nas l Çal fl r? 1 stemci Tarafl (Client-Side) Scripting 2 Sunucu Tarafl (Server-Side) Scripting 2 ASP.NET ve Olay Yönlendirmeli (Event Driven) Model 3.NET Framework 4 Common Language Runtime (CLR) 7 Da t labilirlik, Tafl nabilirlik 8 ASP.NET in Tan m 10 ASP.NET in Getirdikleri 10 ASP.NET in Versiyonlar 11 2 VISUAL STUDIO 2010 13 Visual Studio yu Nas l Elde Edebilirim? 14 Visual Studio 2008 i Tan yal m 14 Yeni Bir Web Sitesi 15 Web Siteleri, Web Projeleri 17 Gizli Solution Dosyalar 19 Solution Explorer 19 Yeni Bir Dosya veya Web Form (ASP.NET Web Sayfas ) Eklemek 20 Bir Web Sayfas yla Çal flmak 21 Sayfam za Web Kontrolleri Eklemek 23 Properties Penceresi 24 Visual Studio 2010 ile Birlikte Gelen Yeni Özellikler 25 ASP.NET Sayfalar 25 ASP.NET Sayfas n n Yap s 26 ASP.NET Sayfas n n Elemanlar 27 3 ASP.NET Sayfa Detaylar 29 ViewState 34 Postback Form 35 Web Form Elemanlar (Kontrolleri) 35
x C# LE ASP.NET Web Form Elemanlar (Kontrolleri) 36 Sayfan n flleyifli 37 Sayfan n Program Olarak Yorumlanmas 37 Sayfalar n za Namespace Eklemek 38 4 WEB FORMLARI 41 HTML Formlar 41 Web Formlar 43 Web Formlar Program Modeli 46 Sunucu Kontrolleri 47 Sunucu Kontrolleri ve Olaylar (Events) 49 Olaya Ba l Yordamlar (Metotlar) 50 Web Formlar n n Postalanmas 53 Form Verilerinin Hemen Postalanmas (AutoPostBack) 55 AutoPostBack Nas l Yap l yor? 56 IsPostBack Özelli i 57 5 DURUM YÖNET M (STATE MANAGEMENT) 61 Mevcut Durumu Koruma 61 ViewState 65 Viewstate ile lgili Önemli Noktalar 67 ViewState in Yönetimi 68 ViewState i Kullanmamak 68 Durum Bilgisini Do ru Kullanmak 72 StateBag 74 Request-Query String 76 Baflka Sayfa Kontrollerini Elde Etme (Cross-Page Posting) 79 HttpCookie Nesnesi 80 Cookie lerin Oluflturulmas 81 Session De iflkenleri 83 Session zleme Prensibi 86 Session Zaman Optimizasyonu 86 Cookie siz Session Kullan m 87 Session State Modlar 88 6 WEB FORM ELEMANLARI 91 HTML Sunucu Kontrolleri 93 Web Sunucu Kontrolleri 96
Ç NDEK LER xi AdRotator 97 Ceckbox ve CheckBoxList 100 DropDownList 103 ListBox 105 RadioButton, RadioButtonList 106 TextBox 110 Button 111 Label 113 Hyperlink 113 Panel 114 ImageButton 116 LinkButton 118 Image 119 Table, TabloRow, TableCell 120 Calendar (Takvim) 124 PlaceHolder 125 Kontrollerin Programatik Olarak Oluflturulmas 127 7 GEÇERL L K KONTROLLER 131 ASP.NET Geçerlilik (Validator) Kontrolleri 131 RequiredFieldValidator 134 CompareValidator 137 RegularExpressionValidator 140 CustomValidator 141 CustomValidator-ClientSide 142 ValidationSummary 145 8 VER TABANI ve ADO.NET 147 ADO.NET 147 Verinin Görüntülenmesi 148 Veritaban Ba lant Yönetimi 149 OleDb.NET Managed Provider 149 SQL Server.NET Managed Provider 150 Veritaban ile Ba lant y Gerçeklefltirmek 151 Command Nesnesi 155 Veritaban ndan Veri Elde Etmek 156 DataReader Nesnesi 157
xii C# LE ASP.NET Form Elemanlar n Kullanmak 160 Veritaban na Veri Eklemek 162 Veritaban ndaki Verileri Güncelleme 167 Veri Silmek 169 9 ADO.NET, DATASET ve D ER KAVRAMLAR 171 Veri Ba ant s n web.config Dosyas ndan Almak 172 DATASET Kavram 172 DataAdapter 175 DataSet 175 Command Nesnesi 177 DataTable 179 DataTable WriteXml ve ReadXml 180 Binary Serialization 183 Deserial zation 187 10 VER ER fi M KONTROLLER 189 Veri Kontrolleri 189 DataSource Kontrolleri 190 AccessDataSource 190 SQLDataSource 194 Baflka Veri Tabanlar na Ba lanmak 197 Veri Ba lant s n Dinamik Olarak web.config Dosyas ndan Almak 199 XmlDataSource 201 ObjectDataSource 204 SiteMapDataSource 209 Data Source Kontrollerinde Filtre-Parametre Kullan m 210 Di er Parametrelerin Kullan m 212 Insert Parametresi 215 Delete, Update Parametreleri 218 Parametre Nesneleri 221 11 LINQ 223 LinqDataSource 223 LINQ fadeleri 224 LINQ to SQL 226
Ç NDEK LER xiii 12 VER GÖSTER M KONTROLLER 233 GridView 234 Paging ve Sorting 235 GridView Paging Özelliklerinin Belirlenmesi 238 GridView Alanlar 239 CheckBox DataField 240 ImageField 242 ButtonField 243 HyperLink Field 243 Template Field 246 GridView da Verilerin Düzenlenmesi 248 CommandField 250 GridView Olaylar 254 DataSource Olaylar 260 Silme Onay ve Client-Side Script flletme 262 DetailsView 263 Master-Detail Kullan m 265 Master-Detail Yeni Kay t Ekleme, Düzenleme, Silme 267 Veri Ba lama 271 FormView Data Kontrolü 272 DataList 278 ListView Kontrolü 281 Veriyi Gruplar fieklinde Sunmak 282 Veriyi Gruplar fieklinde Sunmak 282 Sütunlar n Belirlenmesi 284 Repeater 286 DataPager 288 13 MASTER SAYFALAR (PAGES) 291 Master Sayfa Ne Demek? 291 Master Sayfa Örne i 293 Olay Yönlendirme ve Code Behind 297 Master Sayfalar Programatik Olarak Kullanmak 298 Kontrollere Ulaflmak 299 ç içe (Nested) Master Sayfalar 302
xiv C# LE ASP.NET 14 S TE GEZ N M (NAVIGATION): B R WEB UYGULAMASI 306 Menü Kontrolü 306 Kiflisel Site Uygulamas 310 Menü Kontrolünü Programatik Olarak Kullanmak 311 Menu Elemanlar n Programatik Olarak Elde Etmek 312 SiteMapPath Kontrolü 312 TreeView Sunucu Kontrolü 315 TreeView da fiekilsel Düzenlemeler 316 TreeView da Bir XML Dosyas Kullanmak 317 TreeView-Seçim 319 TreeView Çoklu Seçim 320 TreeView Aç l m n Kontrol Etmek 321 TreeView-Olaylar 322 15 GÖRSEL TEMALAR 325 CSS ler ve Geleneksel Biçimler 326 Mimari 326 Sk n ler 327 Bir Tema Uygulamas 327 Skin Dosyas Tan mlar 327 Sayfa Baz nda Tema Tan m 328 Uygulama Baz nda Tema Tan mlamak 328 Sunucu Kontrollerinde Temay Etkisiz K lmak 329 Temalar Sayfa Baz nda Etkisiz K lmak 329 Ayn Tema çinde Farkl Skin Dosyalar Kullanmak 329 CSS Dosyalar n n Temalarla Kullan m 331 Resim Kullan m 333 Liste Elemanlar na Tema Uygulanmas 334 Yerleflim Düzenlerini (Layout) Belirlemek 335 Temalar m z Programatik Olarak Atamak 337 16 PROF LLER 341 Profillerin Tan mlanmas 341 Profil Provider lar 342 Veritaban n n Yap land r lmas 342 Profil Veritaban na Ba lanmak 344 Profil Özelliklerinin Tan mlanmas 344
Ç NDEK LER xv Profillerin Kullan m 345 Anonim Profiller 347 Anonim Profillerin Çal flma Mant 348 Anonim Profil Tan mlar n n Özellikleri 349 Profil Özelliklerinin Di er Nitelikleri 349 Profil Özelliklerinin Grup Halinde Tan mlanmas 350 Profilleri Miras Olarak Kullanmak 351 Tan ml Kullan c ve Profiller 353 Anonim Bilgileri Tan ml Kullan c ya Aktarmak 356 Profil Bilgisini Silmek 359 Belirli Profilleri Silmek 360 Profilleri zleme 361 17 GÜVENL K, ÜYELER ve ÜYE YÖNET M 365 Kimlik Do rulama (Authentication) 365 Yetkilendirme (Authorization) 366 ASP.NET ve Güvenlik 366 Üye Yönetimine Haz rl k 367 Forms ve Windows Authentication 367 Forms Authentication Elemanlar 367 SQL Provider 368 Üye Kayd 369 Kullan c Oluflturma Sihirbaz 374 Kullan c Oluflturma Sihirbaz Ad mlar 377 Kullan c lara zin Verme-S n rlama 381 Kullan c lar Sisteme Tan tmak-login Sayfas Oluflturmak 382 Log n Kontrolü 386 Kullan c Özellikleri 388 Kullan c Özelliklerini Güncellemek 390 Kilitli Kullan c simlerini Açmak 394 Kullan c Sil 397 Di er Login Kontrolleri 398 LoginView, LoginName, LoginStatus ile lgili Bir Kullan m: Kullan c Tipine Göre çerik 399 Password De ifltirme 401 PasswordRecovery 402 SMTP Yap land rmas 402
xvi C# LE ASP.NET Online Kullan c Say s 404 Yetkilendirme (Authorization) 405 Yetkilendirmenin Web.config de Tan mlanmas 405 Rol Kavram 406 SqlRoleProvider 407 Rol Ekleme Kald rma 408 Kullan c lar Rollere veya Rolleri Kullan c lara Eklemek 410 Kullan c ya Rol Atamak ve Silmek 410 Kullan c ya Roller Atamak 414 Kullan c Rol Metotlar na Genel Bir Bak fl 416 Kullan c Rollerini Sorgulamak 417 18 WEB PART LAR ve B R PORTAL UYGULAMASI 419 Web Part Kavram 420 Portal n Temel Yap s 420 Portal Altyap s 421 Portal m z Olufltural m 422 Web Part lar 423 Web User Kontrollerinin Web Part Olarak Kullan lmas 425 Özel Kontrolleri Eklemek 426 Web Part fiekilleri (Modlar ) 429 BrowseDisplayMode 430 Des gndisplaymode 431 CatalogDisplayMode 432 EditDisplayMode 436 Web Part lar Aras letiflim 440 Web Part hraç (Export) Etmek 446 Bir Web Part n thal Edilmesi 447 Portal Verileri 448 19 PERFORMANS YÖNET M 451 Önbellekleme (Cache) 452 Sunucu Tarafl Önbellekleme 453 Sayfa Ç kt s Önbelleklemesi 454 Sorgu Dizgisi (QueryString) Önbelleklemesi 456 Response.Cache 457 Web Kullan c Kontrolü Önbelleklemesi 459 Cache API 460 Dinamik çerik Eklemek 461
Ç NDEK LER xvii Veri Önbelleklemesi 464 Veritaban Ba ml Önbellekleme 467 Veritaban n Haz rlamak 469 Veritaban Tablosunu Haz r Hale Getirmek 470 web.config Tan m 471 Sayfa Tan mlar 472 Veritaban Ba ml Önbelleklemenin Programatik Olarak Kullan m 473 20 YAPILANDIRMA ve YÖNET M 477 ASP.NET Yap land rma Sistemi 477.config Dosyalar n n Hiyerarflisi 478 web.config Dosyalar n n Yap s 480 web.config Dosyas n n Elemanlar 483 web.config Dosyas ndan Veri Getirmek 484 web.config Dosyas ndaki Bir Bölümü XML Olarak Yazd rmak 489 web.config Özelliklerinin Programatik Olarak Eldesi 490 web.config Dosyas na Yazmak 493 Web Site Yönetim Arac 497 Komut Sat r Araçlar 498 21 ZLEME ve HATA DENET M 501 zlemeyi Etkin Hale Getirmek 501 zleme Bilgisine Yazma 505 Uygulama Düzeyinde zleme 506 zleme De erlerine Programatik Olarak Eriflmek 508 Hata Denetimi 510 Hata Kategorileri 511 Try ve Catch 511 Belirli stisnalar n Yakalanmas 515 Kümelenifl Yordam stisnalar 517 Page_Error Metodu ile Hata Yakalamak 518 Özel Hata Sayfalar 519 Belirlenmifl Hata Özel Sayfalar 520 22 D ER KONTROLLER 523 ImageMap 523 AdRotator 527 BulletedList 528 FileUpLoad 532
xviii C# LE ASP.NET HiddenField 534 Wizard 535 Wizard flleme Modelleri 539 Do rusal Olmayan Çal flma Modeli 542 fiekilsel Düzenlemeler 545 MultiView ve View Kontrolü 548 Di er Özellikler 551 Buton Kontrolleri 551 PostBackUrl 552 Calendar 554 CheckBox 555 image 556 Label 557 Liste Kontrolleri 557 Panel 559 23 ASP.NET AJAX 561 AJAX n Olumlu ve Olumsuz Yanlar 561 ScriptManager 562 K smi Güncelleme 563 UpdatePanel 564 Tetikleyiciler (Triggers) 567 UpdatePanel-Koflula Ba l Güncelleme 568 fllem Bildirimi 570 Zamanlanm fl Güncellemeler 571 ASP.NET AJAX Control Toolkit 573 ASP.NET AJAX Control Toolkit Temini ve Kurulumu 573 SliderExtender 574 MaskedEditExtender ve MaskedEditValidator 576 24 SILVERLIGHT 579 Silverlight Altyap s 580 Silverlight Kullan m na Haz rl k 580 Silverlight Uygulama Yap s 581 Bir Silverlight Uygulamas Gelifltirmek 583 Kodlarla Çal flmak 586 Silverlight Uygulamam z Test Etmek 586
Ç NDEK LER xix 25 STAT KSEL GRAF K LER (CHARTING) 589 Basit Bir Grafik Uygulamas 589 Grafiklerin Oluflturulma Tekni i 592 Karfl laflt rmal Seriler 592 Kod Tarafl Grafik Kullan m 594 Veritaban ile Kullan m 595 Serilerin Veritaban ndan Al nmas 597 Verilerin DataSource dan Al nmas 599 Grafik Verilerinin XML Dosyas ndan Al nmas 600 26 ASP.NET ROUTING 603 ASP.NET Routing Uygulamas 604 Fiziksel Dosya Görünümü 605 Global.asax 605 Basit Bir Routing fllemi 605 Parametre Tafl ma 607 Birden Fazla Parametrik De er Kullanmak 609 Response.RedirectToRoute 610 Veri Görüntüleme Kontrollerinde Routing 610 27 D NAM K DATA 615 Dinamik Data Uygulamas 615 Tablolar Aras liflkilendirme 620 Dinamik Data Kontrollerinin Düzenlenmesi 621 28 4. VERS YONLA B RL KTE ASP.NET E GELEN D ER YEN L KLER 623 ViewState Yönetiminde Yeni Bir Özellik 623 ListView Kontrolündeki Kolayl k 625 CheckBoxList ve RadioButtonList Kontrollerindeki Yenilikler 626
xx C# LE ASP.NET