16/5/2007
Merhaba bu makalemde Expression Web ile sayfaların içeriklerini database’den rastlantısal olarak çekmeyi anlatacağım. FRP Kitap Merkezi sitesi serisinin 6. makalesinde ana sayfamızı oluşturacağız.
İlk önce master page’den yeni bir sayfa yaratıyoruz ve sayfayı default.aspx olarak kaydediyoruz. (Master page ve master page’den sayfa yaratma konuları için bu serinin 1. makalesini kontrol edebilirsiniz.) Ana sayfanızı index, default isimleriyle kaydedebilirsiniz. default.aspx olarak kaydedeceğiniz sayfa ASP.NET projelerinde sorunsuz olarak çalışacaktır. Ana sayfamızı oluşturduğumuza göre şimdi sayfanın içeriğini oluşturmakla devam edebiliriz.
Ana sayfaya her açılışta ve/veya sayfa tekrar yüklendiğinde kitaplardan birinin detaylarıyla ana sayfada gözükmesini istiyoruz. Bunun için her şeyden önce bir başlık oluşturacağız. Başlayalım. Content alınana Toolbox’dan bir DIV sürükleyip bırakıyoruz. Bu başlık DIV’i olacak. DIV seçiliyken Manage Style kutusundaki New Style’a basıp başlık DIV’i için CSS kuralımızı hazırlıyoruz.
Başlığımız hazır.
<div id=”homePageHeader”></div>
</div>
background-color: #d2d2d2;
background-image: url(‘../images/homePageHeader.jpg’);
background-repeat: no-repeat;
background-position: center;
border: 1px solid #000000;
height: 37px;
}
Manage Style kutusunda #homePageHeader’ı layout.css içine sürükleyip bırakıyoruz. Böylece default.aspx içine yazılmış CSS’i external CSS dosyasına taşımış oluyoruz.
Buraya kadar yaptıklarımızın daha detaylı anlatımlarını bu serinin ilk makalesinde bulabilirsiniz.
Şimdi rastlantısal içeriğimizi hazırlayalım. Toolbox>ASP.NET Controls>Data altından FormView’u content alanına sürükleyip bırakıyoruz.
FormView’a ait küçük okçukla Common FormView Tasks kutusunu açıyoruz. Choose Data Source’da New Data Source’u seçiyoruz.
Database işlemlerinin aşağıdaki ekrana gelene kadarki kısmını bu serinin ikinci makalesinden kontrol edebilirsiniz. Configure Select Statement ekranında “Specify a custom SQL or stored procedure”u işaretleyip next’e basıyoruz.
Gelen ekranda Select tabı seçiliyken SQL Statement’e alttaki satırı yazıyoruz.
SELECT TOP 1 * FROM [kitap] inner join [kitapDetay] on kitap.kitapID=kitapDetay.kitapDetayID ORDER BY NEWID ()
Test Query ile verimizi kontrol ediyoruz. Test Query’e her bastığınızda başka bir kitabın gelmesi lazım.
Common FormView Tasks’daki Edit Templates ile verilerimizi düzenlemeye başlıyoruz.
Sildiklerimiz: kitapID tamamen, kitapIsmi başlık, kitapImage tamamen, kitapID1 tamamen, kitapDetayID tamamen, aciklama başlık.
Ardından başlıkları düzeltip, gerekli olanlara .boldText CSS’ni uyguluyoruz.
Şimdi imajı database’den çekeceğiz. Bunun için Toolbox>ASP.NET Controls>Standard altındaki image’i sürükleyip bırakıyoruz.
Image ikonun okçuğuna basarak Databindings’de ImageUrl’yi ayarlıyoruz.
Ardından imaja .imageLeft CSS’ni uyguluyoruz.
Bu işlemlerin daha detaylı anlatımını makale serisinin 2. ve 3. makalelerinde bulabilirsiniz.
Sonuç. Sayfayı her yenilediğinizde başka bir kitap gözükecektir.
Sitemizi tamamlamadan önce son bir şey kaldı o da sayfaların Title’ları. Bunun içi sayfa açık ve seçiliyken File>Properties’e basıyoruz.
Gelen ekranın General tabında Title alanına istediğimiz ibareyi yazıyoruz.
Sonuç.
Bu makalemde Expresiion Web’i kullanarak sayfalarda rastlantısal içerik oluşturmayı anlattım.
İyi çalışmalar
Teşekkürler
teşekkürler