Makale Özeti

ASP.NET uygulamaları geliştirmek için ücretsiz bir yazılım geliştirme aracı olan ASP.NET Webmatrix ile nasıl hızlı bir şekilde ASP.NET uygulamaları yazabiliriz bunu aktarmaya çalışacağım.

Makale

Untitled Document

Web Matrix ile ASP.NET Uygulamaları Geliştirmek

ASP.NET uygulamaları geliştirmek için ücretsiz bir yazılım geliştirme aracı olan ASP.NET Webmatrix ile nasıl hızlı bir şekilde ASP.NET uygulamaları yazabiliriz bunu aktarmaya çalışacağım.

ASP.NET 1.0 duyuruldu haberini birçok e-posta grubuna yolladığımı ve yollarken yaşadığım heyecanı hatırladım makaleye başlamadan. Nereden nereye geldik. 1 yıl içinde yüzlerce seminer ile tüm Türkiyeye bu teknolojiyi aktarmaya çalıştık ve aktarmaya devam ediyoruz. Sizlerden de olumlu tepkiler almamız bizim için en iyi motivasyon kaynağı. Bu makalede sizlere ASP.NET WebMatrixi anlatmaya çalışacağım. ASP.NET uygulamaları geliştirmek için ücretsiz bir yazılım geliştirme aracı olan ASP.NET Webmatrix ile nasıl hızlı bir şekilde ASP.NET uygulamaları yazabiliriz bunu aktarmaya çalışacağım.

Webmatrixin hikayesi ilginç, kendisi C# kullanılarak yazılmış. Yazanlar da Microsoft içerisindeki 6 kişilik bir ekip, bunu boş zamanlarında hobi olarak tasarlamışlar ardından ortaya böyle güzel bir araç çıkmış. Visual Studio .NET kullananlarınız olmuştur mutlaka, Webmatrix o kadar geniş bir yelpazeye sahip olan bir ürün değil ama sıkıştırılmış toplam program boyutu sadece 807 KB yani bir diskete dahi sığabiliyor. İnanılmaz birşey, siz de göreceksiniz içeriği o kadar geniş ki, nasıl olmuş da bunu 1 MB dahi olmayan bir dosyaya sığdırabilmişler şaşmamak elde değil. Öncelikle bu yazılımını bilgisayarınıza indirmek ile başlayın:

ASP.NET Webmatrixi indirmek için tıklayınız »

Programı kurduktan sonra çalıştırın ve karşınıza gelen ilk ekran şöyle bir ekran olacak:

İşte mükemmel bir başlangıç ekranı, hiç ASP.NET bilmiyorsanız bundan iyi bir araç olamazdı herhalde. Öncelikle Templates başlığı altında yaratabileceğiniz sayfa başlıkları mevcut. Sağ kutuda ise o başlık altında yer alan örnek dosyaları görüyorsunuz. İsterseniz bir ASP.NET sayfası yapalım öncelikle location olarak bu makale serimizde kullanacağımız bir klasör yaratalım adına da webmatrix diyelim. Ardından bizden bir dosy adı yani Filename istiyor denemelerimizi sıradan yapacağımız için ona deneme1 diyelim. Son olarak Webmatrix içerisinden dil seçimi yapabiliyorum Visual Basic.NETmi C#mı. Beni tanıyanlar ne seçeceğimi az çok bilir :) Visual Basic .NETi seçelim. Son olarak isterseniz seçimlerinizin aşağıdaki gibi olması kontrol edelim:

Hazırız ve OKe basıyoruz. Karşımıza gelen ekran bize standart bir windows uygulaması gibi görünüyor. Kısaca bölümleri inceleyecek olursak, ilk karşınıza gelen klasik bir menü bar seçenekleri. Bu kısmı çok derinlemesine açıklamaya gerek yok diye düşünüyorum:

Şimdi ilk önemli kısım toolbar. Gördüğünüz gibi ilk gelen seçenek Web Controls. ASP.NET ile gelen en büyük özelliklerden biri artık gerçek programlama dilleri kullanabildiğimiz için (Visual Basic .NET gibi, C# gibi), artık web formları adını veriyoruz ASP.NET sayfalarına da, yani bir Windows Form oluşturuyormuşçasına web sayfaları hazırlıyoruz. Web formlarında kullanacağımız elemanlara ise Web Kontrolleri, ingilizcesiyle Web Controls diyoruz. Sol tarafta gördüğünüz de işte bu web kontrollerini barındıran toolbox seçeceği. Bunları sürükle bırak metodu ile az sonra sayfalarımıza yerleştireceğiz.

Kitabımı okuyan bir arkadaş hep az sonra demişsiniz hemen gösterseniz süper olurdu demişti. Hemen ben de diğer ekran görüntülerini bir kenara bırakıp kod yazmaya başlıyorum, hadi bakalım başlıyoruz.

Bir Labelı toolboxtan alın ve sürükleyip form üzerine bırakın, ardından bir Textbox ve ardından bir submit butonu. Elde edeceğiniz görüntü şu şekilde olacaktır:

Şimdi Labelın üzerine bir kere tıklayın ve sağ alt köşedeki properties menüsüne dikkat edin, şöyle birşey görüyor olmalısınız:

Seçmiş olduğumuz Label aslında az önce anlatmaya çalıştığım web kontrollerinden biri yani bir nesne. Nesne (object) dediğimizde Visual Basic.NET veya C# gibi diller ile arka planda yer alan program kodundan ona erişebileceğimiz kontroller aklımıza gelmedi. Peki ona erişirken bir ismi olmalı. Bir grup içerisinde "şişşşt" diyenlere nefret ederim, çağıracağın kişinin adını bilmiyorsan öğren, 10 kişinin arkasına dönüp sana bakması daha mı güzel :) Neyse aynı şekilde bizim de program kodundan şişşt demememiz için onun adını yani IDsini bilmemiz lazım işte orada yazan Label1 de onun adı. Tanıştığımıza memnun oldum ama ben böyle birşey anlamıyorum Label1 falan demekle haklısınız ben de anlamıyorum. Hemen gidip bu properties menüsünde yer alan (ID) alanını değiştiriyoruz baslik olarak. Ardından Text seçeceğinde yazan Label ifadesini de Lütfen Adınızı Yazın olarak değiştirelim.

Bakınız Properties ne kadar faydalı. Notepadde de kod yazmak mümkün ama böyle görsel araçların faydasıyla zamandan tasarruf sağlayarak hızlı bir şekilde üretim yapmak mümkün, verimlilik endüstride önemli olduğunu unutmayalım.

Properties seçeceği ile görüldüğü gibi seçtiğim web kontrolünün sahip olduğu tüm özellikleri ayarlayabiliyorum. Şimdi şunları yapalım; öncelikle TextBoxı seçelim. Adını da yani (ID)sini isim olarak değiştirelim. Butonun Text özelliğini değiştirerek Gönder yapalım.

Evet evet benimle aynı şeyleri düşünüyorsunuz, Merhaba diyeceğiz size ama unuttuğumuz birşey var mesajı nereye yazdıracağız. Hemen toolboxdan bir Label daha sürükleyin ekrana onun (ID)sine de cikti diyelim. Son olarak görsel olarak da ekranı düzenleyelim ve sizin de elinizdeki ekran şuna benzemeli bu yaptıklarımızdan sonra:

Görsel olarak hazırız. Şimdi bu sayfanın altında yer alan bir bar var, ona dikkat edin:

Evet işte bu. ASP.NETin en büyük avantajlarından biri Program kodu ile içeriği birbirinden ayırmasıdır. Bunu iki şekilde yapar ya tek sayfada script blokları arasında program kodu yazarsınız, ya da ayrı bir sayfada teknik olarak buna codebehind diyoruz. ASP.NET Webmatrix bu işi tek sayfada bitiren bir program ve ben de bu özelliği sevenlerden biriyim. Gördüğünüz Design, HTML ve Code kısmı görüldüğü gibi sayfası parçalara bölüyor gibi görünse de All butonuna bastığınızda aslında bunun tek bir aspx sayfası olduğunu ve yapılanın da belirli alanları göstermek olduğunu göreceksiniz. Güzel düşünülmüş, hemen kod yazmaya geçelim. Gönder ifadesinin üzerine çift tıklayın karşınıza gelen ekrana aşağıdaki gibi kodları yazın:

Ne yaptık anlatayım kısaca; cikti diye bir nesnemiz var, onun metin değerine yani text değerine isim nesnesinden aldığımız metni yani texti Merhaba ifadesi ile birleştirdik ve ekrana yazdırdık. Görüldüğü gibi cikti ve isim bizim nesnelerimiz yani biz program kodundan onların metodlarına, özelliklerine ve olaylarına erişebiliriz. Bu örnekte text özelliklerine eriştik. Şimdi F5 tuşuna basın ve menüden yer alan Run seçeneğini seçin. Karşınıza şöyle bir ekran gelecek:

Bu ekran diyor ki, ben kendi Serverımla da bunu çalıştırırım uygulama portu da 8080 olur, kabul ediyormusun. Şahsen ben ediyorum, ama siz isterseniz IISi de kullanmak isteyebilirsiniz, zevkler ve renkler tartışılmaz, karar sizin. Eğer benim gibi Web Matrix Server derseniz service çalışmaya başlayacaktır şekildeki gibi:

Ve ardından sayfamız görüntülenecek:

Adımızı yazalım bakalım çalışıyor mu:

Evet işte çalıştı. Çalışmadıysa o kadar çok ihtimal olabilir ki :) Öncelikle asp.net uygulamalarının hata mesajları çok detaylıdır yapmış olduğunuz hata varsa mutlaka detaylı bir şekilde yer alıyordur. Almıyorsa configürasyon problemi yaşıyor olabilirsiniz, Frameworkun ayarlarını kontrol ediniz. Belki 8080 portunu kullanmaya yetkiniz yoktur, sisteme giriş yaptığınız kullanıcının service başlatma yetkisi olmayabilir. Bu durumda sistem yöneticisi arkadaşı bularak ondan administrator haklarını kopartın, en azından bundan sonrası için herşeyi değiştirebilme şansınız olur.

Çalıştığını düşünerek devam edelim makalemize, hemen bir veritabanı bağlantısı kuralım. Öncelikle gidip sağ üst kısımdaki Data seçeneğini seçelim:

 

New Connection seçeceğini seçtiğinizde karşınıza bir ekran gelecek. Veritabanına bağlanabilmek için onun olması gerekir. O halde makinezine SQL Server veya MSDE kurulu olmalı. MSDE bedava olduğu için onu kurabilirsiniz. Onu kurduğunuzu farzediyorum ve devam ediyorum.

Bir klasik olarak sa kullanıcısı vardır ve şifresi hep boştur :) Eğer sizinki farklı birşey ise onu yazınız ve aşağıdaki seçeneklerden pubs isimli veritabanını seçiniz:

Şimdi gidip data menüsüne bir ziyaret daha yapalım ve karşımıza gelen localhost.pubs seçeneğine tıklayarak tablolara bakalım:

Evet gördüğünüz gibi pubs veritabanı içerisindeki tablolar listelendi. Şimdi authors tablosunu tutup design ekranına bırakın.

Ne oldu bu sürekle-bırak işleminde; öncelikle SqlDataSourceControl1 isimli bir kontrol yaratıldı veritabanına erişmek için. Ardından bir datagrid eklendi ve otomatik olarak authors tablosunun içindeki kolonlar bağlandı. Kodun detayları için HTML tabına tıklamanız yeterli:

Artık son aşamaya geldik, şimdi F5 tuşuna yeniden basalım ve bakın karşımıza ne geliyor:

İşte size authors tablosunun içeriği hatta sayfalara bölünmüş olarak. Şimdi ASP.NETle yazılım geliştirmek kolay derken ne anlatmak istediğim daha kolay anlaşılmıştır herhalde.

ASP.NET Web Matrix ile veritabanlarına bağlantılar, datagridler, datareaderlar, web servisleri, mobil uygulamalar ve daha neler neler bundan sonraki makalemizde.

 

Mehmet Nuri ÇANKAYA

cankaya@aspnedir.com