Genel

23.04.2008 Çarşamba günü Trakya Üniversitesi' nde gerçekleşen Asp.Net 2.0 laboratuar çalışmasını 25.04.2008 Cuma günü Doğuş Üniversitesi' nde gerçekleştirdik.

Değindimiz konular
 - Html
 - MasterPage & Navigation
 - Ado.Net

Yapılması öngörülen fakat bitirilemeyen uygulamanın tamamı.
Proje.

Microsoft Visual Studio arayüzünün tanıtımı ile başlayan bu kitap, Visual C# .NET ile Windows tabanlı programlamaya başlamak için bir rehber niteliğindedir. Değişkenler, veri tipleri, operatörler, döngüler, algoritmalar, diziler ve metotlar gibi programlamanın temelini oluşturan kavramlar, basitten karmaşığa doğru ilerleyen laboratuvar uygulamalarıyla okuyucuya verilir. Visual Studio arayüzü ile C# dilinin kullanım kolaylığını temel alan bu kitap, programlamaya yeni başlayanlara hitap eder.

  • Açıklamalı kod örnekleri
  • Ekran görüntüleriyle desteklenmiş ayrıntılı Visual Studio anlatımı
  • Her seviye kullanıcının rahatlıkla yapabileceği laboratuvar uygulamaları

Kitabı satın almak için tıklayın.

25.04.2008 Cuma günü Yeditepe Üniversitesi Mühendislik Fakültesi B411 Nolu laboratuarda Sql Server 2005 ve Ado.Net 2.0 ile ilgili workshop yaptık.

Daha çok bir programcı gözüyle değindiğimiz Sql Server 2005 ten sonra temel Ado.Net yapısının ele alındığı basit bir web uygulaması ile eğitimi tamamlamış olduk.

Değindimiz konular
Sql Server 2005
 - Data Types
 - Table
 - View
 - Stored Procedure
Ado.Net
 - Connection
 - Command
 - Parameters
 - DataAdapter
 - DataSet & DataTable

Yaptılan örnek proje.
Veritabanı örneği.

Resimler

Tıkla Gör Tıkla Gör Tıkla Gör

The Code Project

1.Mayıs.2008 Genel

01.05.2008 Perşembe günü itibariyle The Code Project sitesinde ilk makalem yayınlandı.

Publishing Remote Object From IIS

23.04.2008 Çarşamba günü Trakya Üniversitesi Bilgisayar Mühendisliği L201 Nolu laboratuarda Asp.Net 2.0 ile ilgili workshop gerçekleştirdik. Sql Server 2005' in azizliğne uğramasaydık uygulamanın tamamını beraber yapmamız kaçınılmazdı :)

Değindimiz konular
 - Html
 - MasterPage & Navigation
 - Ado.Net
 - Membership & Login Controls

Uygulama sırasında kullanmış olduğum IE Developer Toolbar.
Toolbar.

Yaptılan örnek proje.
Proje.

Projede kullanılan veritabanı.
Veritabanı

Resimler

Tıkla Gör Tıkla Gör Tıkla Gör

Tıkla Gör Tıkla Gör Tıkla Gör
Tıkla Gör Tıkla Gör Tıkla Gör

10.04.2008 perşembe günü Doğuş Üniversitesi Acıbadem kampüsünde .Net Framework 3.5 yenilikleri ile ilgili biraz seminer biraz workshop tadında etkinlik gerçekleştirdik.

Değindiğimiz konular:
 - Object & Collection Initializers
 - Anonymous Types
 - Extension Methods
 - Lamda Expression
 - LINQ

Sonunda ise LinqToSql ve Ajax kullanarak basit bir web uygulaması geliştirdik.

11.04.2008 Cuma günü Yeditepe Üniversitesi Mühendislik Fakültesi B411 Nolu laboratuarda C# 2.0 ile ilgili 3 saat süren bir workshop yaptık.

Öğrencilerin C++ ve Java konusundaki bilgileri sayesinde önce temel dil farklılıklarına değindik ve hızlıca uygulamalara geçtik.

Değindimiz konular
 - Visual Studio 2008 Interface
 - C# Syntax
 - Data Types
 - Boxing / Unboxing
 - Class structer
 - Encapsulation
 - Inheritance
 - Error Handling and Custom Exception

Yapılan örnek proje.

Resimler

Tıkla Gör Tıkla Gör Tıkla Gör

18.04.2008 Cuma günü Yeditepe Üniversitesi Mühendislik Fakültesi B411 Nolu laboratuarda C# 2.0 ile ilgili 2. ve son workshop tamamlanmış oldu.

Değindimiz konular
 - Delegates
 - Event
 - Interface
 - Serialization

Yaptılan örnek projeler.

Reflection, vakit olmadığı için anlatamadığım bir konu fakat yinede örneği aşağıda.

Reflection örneği.

Resimler

Tıkla Gör Tıkla Gör Tıkla Gör

02.05.2008 Cuma günü Yeditepe Üniversitesi Mühendislik Fakültesi B411 Nolu laboratuarda Asp.Net 2.0 ile ilgili workshop yaptık.

Daha çok giriş niteliğinde olan eğitim ile birlikte Yeditepe Üniversitesi' ndeki eğitim serimizinde sonuna gelmiş olduk.

Katılan tüm öğrencilere ve Ümit BÜYÜKABALI' ya teşekkür ediyorum.

Değindimiz konular
 - Page, WebForm & Application
 - Asp.Net Controls
 - ViewState
 - MultiView & Validation Controls
 - FileUpload
 - AJAX

Yapılan örnek proje

VS2008 Image Library

17.Ağustos.2008 Genel

Visual Studio 2008 kurulumu ile sabit diskimize konuçlanan resim kütüphanesinde bayağı bir değişiklik ve eklemeler yapılmış. Çok da güzel olmuş.

Kütüphanenin tam yolu:
C:\Program Files\Microsoft Visual Studio 9.0\Common7\VS2008ImageLibrary\1033\VS2008ImageLibrary.zip

En çok dikkatimi çeken ve kullanışlı olduğunu düşündüğüm _Common Elements klasörü altında bulunan png uzantılı dosyalar.

Tek bir png dosyasında aynı resmin farklı versiyonları bulunuyor. Photoshop ile düzenlemek daha kolay olacak.
Nedendir bilinmez, Microsoft underline ifadesi için bir resim dosyası yapmaması. Bir önceki versiyonda da yoktu hala yok. Neyse bende fazla bir tane var.

08.05.2008 perşembe günü Doğuş Üniversitesi' nde Framework 3.5 ve VS 2008 özelliklerini kullanarak Asp.Net uygulaması yaptık.

Yapılan uygulama.
SunFlower

Uygulamada kullanılan veritabanı.
DataBase

Ara ara web tabanlı WYSIWYG editorleri incelerim. Geçenlerde Fck Editor ile oyalandım. Gerçekten de çok başarılı bir editor olduğunu rahatlıkla söyleyebilirim. Gerçi indirip hemen kullanamıyorsunuz ama biraz ilgi ve alaka ile bunu başarıyorsunuz.

Azıcık araştırdım birazcık kurcaladım ufak tefek te eklemeler yaptım. Amacım Asp.Net Web Form' larında hızlı bir şekilde kullanmak.

Neler yaptım bir bakalım;

  • Editörün config dosyasını Asp.Net için ayarladım.
  • Sadece Asp.Net içinde kullanılacağı için gerekli olmayan dosya ve klasörleri sildim.
  • ToolBar' ı basitleştirdim.
  • Tek tema kullandım, diğerlerini sildim.
  • FileBrowser' ın dört faklı upload tipi için ayrı klasörler ayarladım.
  • Rar uzantı için resim dosyası ekledim.
  • FileBrowser ile dosya listelerken alternatif satır rengi ekledim.
  • FileBrowser' a resimler için önizleme ekledim.

Proje dosyası, fckApplication.

Resimler

Toolbar optimizasyonu Fck Editor Toolbar

Dosya gösterimi için alternatif satır rengi Fck Editor Filebrowser Alternatif

Resimler için ön izleme Fck Editor Filebrowser Image

Bir önceki yazımda Fck Editor'ü Asp.net projelerinde daha rahat kullanılabilecek hale getirdiğimden bahsetmiştim. Sanırım bir şey eksik kalmış, Fck Editor'ü bir projeye nasıl entegre ederim unutmuşuz :)

Adım adım ilerleyelim;

1. Gerekli dosyaları buradan indirelim.

2. Resimde işaretli klasörleri projeye ekleyelim.

Fck Folders

3. Eklediğimiz dosyalar içerisinde işaretli olan ascx dosyasını düzenleyerek upload edeceğimiz kaynakların yollarını belirleyebiliriz.

Fck Config

4. FredCK.FCKeditorV2.dll dosyasını Toolbar' a ekleyelim. Bunu yapmak için dll dosyasını Toolbar'a sürükleyip bırakabilir yada Toolbar'a sağ tıklayıp Choose Items.. komutunu kullanabiliriz.

Fck Toolbar

Artık Fck Editor kontrolünü Textbox kullanır gibi web formlarımızda kullanabiliriz.

LogonUI - BETA 1

20.Mart.2009 Genel

İlk beta sürümlerinden beri Windows 7 kullanıyorum. Zamanında aynısını Vista içinde yapmıştım. Beta araba çıksa alırım :)
Vista kullandığım zamanlarda Stardock firmasının LogonStudio uygulamasını kullanıyordum. Bu uygulama sayesinde işletim sisteminin logon ekranının arka planında bulunan resim değiştirilebiliyor. Windows7 (7057) x64 veriyonunda maalesef bu uygulama çalışmıyor.
Bende bir tane yazayım dedim bugün. Nihayetinde bitti. Denemek isterseniz uygulamayı buradan indirebilirsiniz.

Logon Windows 7

Bilgi Geliştirma aşamasında olduğundan hatalar olasıdır. Özellikle dosya ve registry erişimi konusunda. Test ederken Administrator hesabı ile oturum açmak uygun olacaktır.

Html' e aşina iseniz ki ben çok aşinayımdır :) Help Workshop uygulaması ile kendi dokümantasyonunuzu oluşturmanız çok kolay olacaktır.
Mantık olarak yapılan iş;
Html uzantılı (bir birine bağlanmış) dosyaları (js,css ve resim de kullanbilirsiniz) derleyip .chm uzantılı yardım & bilgi dokumanları haline dönüştürmek. Basit bir web uygulaması yapmak gibi de düşünebilirsiniz. Şu ana kadar çok faydasını gördüm. Bilmeyenler de öğrensin diye basit bir görsel hazırladım. Umarım işinizi görür.

Html Help (chm)
İndir

Vista' da gadget olduğu dönemlerde hiç hoşlanmadığım fakat Seven ile çok severek kullandığım Sticky Notes uygulaması hakkında MS tarafından yayınlanan bir bilgiyi düzeltmek için bu yazıyı ekliyorum.

Sticky Notes

Yazıda metinleri biçimlendirebilmek için bazı tuş kombinasyonları listelenmiş. Hatalı olan kombinasyon, metinerin boyutunu değiştiren.
Bilgiye göre;

  Increased text size : Ctrl+Shift+>
Doğrusu;
  Ctrl+Shift+.

  Decreased text size : Ctrl+Shift+<
Doğrusu;
  Ctrl+Shift+,

Uzun yıllardır notebook kullanıyorum. Klavye düzeninde < ve > işaretleri aynı tuş üzerinde. Durum böyle olunca nasıl bu kombinasyonlar kullanılacak pek anlayamadım.

Küçük bir araştırma yaptım. Esas sorun MS'in yerelleştirme konusunda sağlam bir hata yapmasından ibaret. Dillerin kullandığı Klavye yerleşiminin farklı olması sorunun esas sebebi.

Uygun Olmayanlar Uygun Olanlar
keyboad layout keyboad layout
Kanada (Fransızca)
Danimarka
Hollanda
İtalyan
Norveç
Portekiz
İspanyol
İsveç
Almanya
Avusturya
Fransa
Belçika
Çek Cumhuriyeti
İrlanda
Brezilya
Romanya
İngiltere
Arabistan

Kaynak

Asp.Net eğitimi alan hemen hemen tüm öğrencilerin sıkıntılarından biri de, yapılan uygulamaların gerçek sunucuda nasıl yayınlanacağıdır. İşi bilenler için gayet basit gibi görünse de tecrübesi olmayan kişiler için ızdırap haline dönüşebilir.
Hal böyle olunca bu konu ile ilgili tecrübelerimi aktaracağım küçük bir yazı dizisi hazırladım.

Konuyu üç bölüm halinde işleyeceğim. İlk bölüm, uygulamanın ftp ile sunucuya yüklenmesi. İkinci bölüm, uygulamanın (varsa) kullandığı veritabanının sunucuya yüklenmesi. Son ve üçüncü bölüm ise bir takım ipuçları içerecektir.

Birinci Bölüm

Bu bölümde, resimde görülen örnek projeyi sunucuya yüklenecek hale getireceğiz. Bunu göstermemim sebebi, uygulamanın çalışması için sunucuya herşeyi yüklenmesine gerek olmadığıdır.
solution

Yayın Öncesi Ayarlar

Yayınlamadan önce bir iki ayar yapmamız gerekiyor. Web.config dosyasını açıp, compilation -> debug özelliğinin degerini false olarak ayarlıyoruz. Bu performans açısından önemli.
compilation
Bu konu ile ilgili daha fazla bilgi edinmek isterseniz Scott Guthrie's şu yazısını okumanızı tavsiye ederim.
Daha sonra, çalışma zamanında ki (Runtime) olası hataları daha ayrıntılı görmek için customError -> mode özelliğinin değerini false olarak ayarlıyoruz.
customerrors
Bunu yapmanızı özellikle tavsiye ederim. Genelde ilk denemelerde hata alma olasılığı yüksektir. Detay görmek problemleri çözmekte çok faydalı olacaktır. Her şey yoluna girdiğinde şu yazıdaki gibi bir hata yönetimi yapmak işinize yarayabilir.


Internet Explorer -> Settings -> Advanced
explorer settings

Seçili Seçili Değil
checked unchecked

Yayın öncesi ayarları yaptıktan sonra sıra geldi uygulamanın sunucuya gönderilecek çıktısının alınması. Bunun için Projeye sağ tıklayıp publish komutunu veriyoruz. Bu komut ile proje önce derlenir, hata (Error) alınırsa işlem iptal olur. Kimi zaman ikazlar (Warning) alabilirsiniz ve genelde de size nerede olduğu konusundan bilgi vermez. Bu gibi durumlarda aklıma gelen olası sorun, projenin ihtiyaç duyduğu bir kaynağı (resim, script vs) bulamamasıdır.
publish folder
Asp.Net projeleri için birden fazla Publish seçeneği bulunmaktadır. Varsayılan seçenek, belirtilen bir klasöre sadece sunucuya gitmesi gereken dosya va klasörlerin çıktısını oluşturu. Zaten bu da bizim istediğimiz seçenek. Diğer seçenekleri görmek yada kullanmak için (Örneğin local sunucuya yayınlamak gibi) üzerinde üç nokta bulunan düğme işinizi görecektir. Herhangi bir değişiklik yapmadan çıktılar için bir yol belirliyoruz.
publish settings
İşlem başarılı bir şekilde tamamlandığında aşağıdaki gibi bir klasör çıktısı olacaktır. Bunlar sunucuya gitmesi gereken dosyalardır.
publish output


Bin klasöründeki dll dosyaları ve config uzantılı dosyalar sunucuya yüklendiğinde(upload) uygulamanız sonladırılır(Application End) ve ilk çağrıda yeniden başlar(Application Start). Bu durumda uygulama içindeki tüm oturum vs yok olacaktır. Size tavsiyem bakım zamanlarını geç saatlerde yapın ve app_ofline.htm adında bir dosya oluşturup sitenin kök klasörüne koyun. Uygulama erişimini engelleyecektir.

Geriye son bir işlem kaldı. Çıktıların sunucuya yüklenmesine. Bunun için bir ftp uygulamasına ihtiyac var. Bir çok paralı yada parasız alternatif olmasına karşın benim tavsiye Total Commander adlı uygulamyı kullanmanız.
ftp site settings
Resimde görüldüğü gibi ftp sunucunuzu uygulamaya kayıt edin. Publish klasöründeki tüm dosyaları sunucu bilgisayarında size verilen (bu genelde ya wwwroot yada httpdocs adında bir klasör olur) klasöre kopyalayın.
ftp publish
 


Enterprise Library, Linq yada EntityFramework gibi yapılar kullanacaksanız, hosting paketinizin size vermiş olduğu Trust Level' ın medium yada full olduğundan emin olun. MVC gibi OutOfBand (şimdilik) denilen framework'lerinde direk çalışmadığını belirtmek isterim . Bunun için sunucunuzdan destek almalısınız.

Artık (veritabanı kullanmıyorsanız) uygulamayı test edebilirsiniz. Olası durumalara karşı problemleri çözüp yukarıda gerekli adımları tekrar etmeniz yeterli olacaktır.

Birinci bölümün sonu ...

Geçen hafta 1. bölümü biten site yayınlama konusunun devamı.

İkinci Bölüm

Bu bölümde, uygulama için tasarlanmış veritabanını uzak sunucuya nasıl aktarılacağına bakacağız. Burada ki söz konusu veritabanı MS Sql Server 2000 yada daha yeni bir sürüm olacak.

Tabiki de bu işlemleri yaparken hizmeti aldığımız hosting firmasının bize sunduğu imkanlar çok önemli. Biz olayı, bakup-restore imkanı vermeyen hosting firmalar için ele alacağız.

Sql Publish Wizard

Hosting firması, bir arayüz ile backup/restore hizmeti vermiyor yada uyumsuzluklardan dolayı işlemi gerçekleştiremiyorsanız yapmanız gereken;
Önce veritabanının DDL(Create) scriptini oluştumanız daha sonra bunu çalıştırmalısınız. İskeleti oluşturduktan sonra DML(Insert) scriptlerini (ki bu çok zahmetli bir işlemdir) oluşturup yine sunucuda çalıştırmanız gerekmektedir. Klasik MS Sql Server Management Studio sadece DDL scriptleri oluşturabilir. İşte tam burada Sql Publish Wizard uygulaması devreye girip hayatımızı kurtarıyor.


VS2008 kurulu ise SWP uygulamasını şu dizin altından bulabilirsiniz;
64 bit işlemciler için C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Publishing\1.2
32 bit işlemciler için C:\Program Files\Microsoft SQL Server\90\Tools\Publishing\1.2

Başlamadan önce belirtmeliyim ki, SPW ile oluşturulan scriptler var olan bir veritabanı üzerinde işlem yapar. Öncelikle sunucu üzerinde aynı adlı bir veritabanı oluşturmuş olmanız gerekmektedir.

Sql Publish Wizard
Kendi bilgisayarınızda kurulu olan sql server' a bağlantı kuruyoruz.

Sql Publish Wizard
Publish edilecek veritabınını seçiyoruz. "Script all objects in the selected database" seçeneği seçildiği takdirde, adım sayısı azalacak ve gerekli olan tüm ddl ve dml scripleri direk oluşacaktır.

Sql Publish Wizard
İhtiyaç duyduğumuz nesneleri (Table,View,Procedure vs) seçiyoruz.

Sql Publish WizardSql Publish Wizard
Alt nesneleri seçiyoruz.

Sql Publish Wizard
Oluşacak script için dosya adı ve yolu belirliyoruz.

Sql Publish Wizard
Uygun Ms Sql Server versiyonu seçillir.

Sql Publish WizardSql Publish Wizard
Özet bilgisi ve ardından scriptimiz oluşturulur.

Bu işlemlerden sonra yapmanız gereken tek şey, oluşan script içeriğini host firmasının size verdiği arayüz de çalıştırmak olacaktır.

İkinci bölümün sonu...

Visual Studio 2010

15.Şubat.2010 Genel

Visual Studio 2010

 

 

Nihayet Visual Studio 2010 RC sürümüne ulaştı. Artık kullanma zamanı gelmiştir benim için. Bundan sonra sitemde yayınlayacağım projeler bu versiyonda olacak.

 

Herhangi bir text (cs,sql gibi) ortamında çalışırken Ctrl+T klavye kısayolunu ile seçili tüm karakterleri küçük harfe çevirebilirsiniz.