Bu Blogda Ara

22.02.2009

DataColumn.AutoIncrement özelliği


c# veri listelemek için bir çok nesne vardır. listbox,grid,repeater,listview vs vs.
eğer listeleme yaparken verinin sıra numarası gibi bir kolon(sütun) eklemek isterseniz yapmanız gereken işlem çok basit.
öncelikle bir datatable nesnesine ihtiyacımız olacak veriyi veri tabanından çekip yükleyecek. ve bir dataColumn lazım oda sıra numarası kolonu olacak.
//otomatik arttırmaya sahip bir kolon inşa ediyoruz.birer birer artsın diyoruz.

DataColumn dcsira = new DataColumn();
dcsira.AutoIncrement = true;
dcsira.ColumnName = "sirano";
dcsira.DataType = typeof(int);
dcsira.AutoIncrementSeed = 1;

//bir tablo oluşturup, kolonlarına kendi kolonumuzu ekliyoruz.
DataTable dt = new DataTable();
dt.Columns.Add(dcsira);

//veritabanına bağlantı ve adapter tanımlıyoruz
SqlConnection baglan = new SqlConnection("Data Source=(local);Initial Catalog=master;User ID=sa;Password=sa");
SqlDataAdapter da = new SqlDataAdapter("SELECT TOP (10) name FROM spt_values", baglan);

//adapterin fill metodu ile tablomuza sorgumuzdan dönecek verileride ekliyoruz.
baglan.Open();
da.Fill(dt);
baglan.Close();

artık dataTable nesnemiz 2 kolonlu(sirano,name). sirano yu biz oluşturduk ki değerleri 0 dan başlayıp veri setimizin sayısı kadar birer artarak gidiyor, name ise veritabanından gelecek. Burada oluşturduğumuz kolonu önce tabloya ekliyoruz, sonra veritanabından geleni ekliyoruz bu sıra önemli. zira önce fill yapıp sonra kendi kolonumuzu eklersek bizim kolonun değerleri boş kalır.

uygulama: bir websayfası üzerinde repeater nesnesi ile verilerin listelenmesi uygulamasını buradan indirebilirsiniz.

21.02.2009

asp.net'te form,panel DefaultButton özelliği

farzedelim bir sayfada üye giriş kısmı (kullanıcı adı,şifre için textbox ve giriş için buton) ve üye kayıt kısmı (bilgiler için textboxlar ve kaydet için buton). bu durumda sayfada 2 tane buton olmuş oluyor. kullanıcı temayüllerine(eğilimlerine) bakacak olursak çoğu kişi giriş yada kaydet butonuna fare ile basmak yerine texboxları doldurup enter tuşuna basıyor. böyle bir durumda enter ile hangi buton aktif olarak çalışacak karmaşası karşımıza çıkıyor.

bunun için şöyle bir çözüm varmış asp,php gibi dillerde. Her ayrı kısmı(üye giriş ve kayıt) ayrı ayrı form tagları içene alıyor ve er formun DefaultButton özelliğine ilgili butonu veriyormuşsun. ama aspn.nette artık masterPage ile sayfalarda tek form olmaya başladı. demek onun yerine başka bişey olmalı diye düşününce Paneller imdada yetişiyor. şöyleki artık herbir bölümü bir panel içine alıyorsun ve panellerin default buton özelliğini ilgili buton yapıyorsun. böylece kullanıcı giriş bölümü paneli içindeki textboxlara veri giyor ve entera basıyorsa giriş butonu, kayıt paneli içindeki textboxlara veri giriyor ve entera basıyorsa kaydet butonu çalışıyor. sorunda çözülmüş oluyor :D

not: sorun ve çözümü için teşekkür ederim Kâzım :). Öğrencilerimden öğrenmeyi herzaman sevmişimdir...

örnek uygulama: (Kâzım derki)

Resimdeki gibi 3 textbox ve 3 buton var. imleç hangi texboxta ise entera bastığımızda onun altındaki butonun eventi çalışsın istiyorum.

çözüm: her grubu bir panel içine alıp panelin default buton özelligine panelin içindeki butonun ID'sini yazmamiz gerekiyormus.Sunun gibi yani :

4.02.2009

Java e-doküman

1- Java Tutorials: http://home.cogeco.ca/~ve3ll/jatutor0.htm
2- Java Lecture Notes: http://www.cafeaulait.org/course/

Veritabanlı Program Geliştirme

Veritabanlı program geliştirecek bir yazılımcı, acemilik döneminde özellikle veritabanı kısmındaki sıkıntıların(veritabanı geliştiriciliği başlı başına bir olay zaten :D) yanında bu veri tabanını kullancak kişilere hazırlayacağı arayüz için bir sürü sou işareti vardır kafasında, yada bu soruları soramıyordur bile daha : ) :

  • arayüzde ki formlarda neler olmalı
  • hangi tasarımda bilgiye ulaşmak, güncellemek, eklemek daha kolay olur
  • yönetici ne tür raporlar ister
  • raporlar nasıl tasarlanmalıdır
gibi daha arttırılabilecek bir sürü soru . Bu acemilik dönemini aşamanın en güzel ve kolay yolu örnek projeler inecelemektir. küçük çaplı büyük çaplı fark etmez demeyelimde başlangıç fark etmez diyelim. (tabi büyük projenin içinde boğulmamak şartı ile :)

peki örnek projeyi nerden bulacak, ya bi yerde işe başlayacak orada görecek, ki firmalar her projesini göstermez yada netten örnek projeler bulacak.

Tam burada bugün imdadıma acsess yetişti. Gülmeyin, accessden ne çıkar demeyin. Northwind adında örnek bir veritabanı ve kullanıcı arayüzü var ( biliyorsunuz accesste kullanıcı arayüzü tasarımıda yapılabiliyor) . inceledim gerçekten hoşuma gitti. öğrencilere birtürlü anlatamadım, ara ara projelerinde şöyle olmalı böyle olmalı dediğim noktaların büyük kısmını bu arayüzde gördüm. bunda sonra ilk dersteki işim öncelikle bu veritabanını ve arayüzü tanıtmak olacak.

peki nasıl ulaşabiliriz bu veritabanına access > yardım/help> örnek veritabanı/ samples databases > northwind.

öncelikle yüklemenizi isteyebilir internetten , evet diyin çıkan soruyo. işlem tamamdır.

24.01.2009

Attempt to execute SCRIPT .... as a function

Matlab Hataları/Errors

Hata : Attempt to execute SCRIPT fonksiyonadi as a function
Sorun : Dosya adı ile Fonksiyon adının aynı değil. (the file name and function name are not same)
Çözüm : function [geriDonenDegerler]=fonksiyonAdi (paramatreler)
buradaki fonksiyonAdi ile dosyanın isminin aynı olması gerekir. Ya fonksiyon adını yada dosya adını düzeltin. (the file name and function name have to be same )

5.01.2009

CvZip Bilişim Sektöründe Kariyer

- zaten bisürü kariyer sitesi var, bu nerden çıktı ?
- .... gibi kendini ispatlamış siteler varken yenilerin şansı yok!
- vs vs

bir sürü şey söylenebilir olumsuz anlamda ama birde işin diğer tarafına bakmak lazım.

- sektör bazlı olması güzel
- yeni girişimcilerin olması güzel
- ilan sayısı hiç de fena değil
- arama yaparken boğulmaya gerek yok, çünkü zaten sektörel
- freelance ilan modülü var, ve direk menu olarakda ayrı
- 'uzamanına sorun' başlıklı forum modülü var, ve puan sistemi var

daha belki nicesi...

niye bardağın dolu tarafına bakmayalım ki :)


cvZip.com - Bilişim Sektörünün Yeni Kariyer Platformu cvZip.com - Bilişim Sektörünün Yeni Kariyer Platformu

27.11.2008

Akademik iş ilanları / bursları takip

1- Akademik Kariyer Merkezi : yurt içi/dışı burs ilanları, yurt içi/dışı akademik personel ilanları, Türkçe.
http://kariyermerkezim.com/

2-Akademic Key for science : We created Academic Keys to offer universities a venue to efficiently recruit for higher-level faculty and administrative positions. tabiki ingilizce.
http://sciences.academickeys.com/

3-Akademisyen için gerekli bilgileri içeren bir site. Türkçe.
http://www.akademisyenler.org/

14.11.2008

Page.IsPostBack C#

eğer şu tarz soruları sıkça soruyorsanız çözümü var .

"neden dropdownlist nesnem seçili değeri değilde hep ilk değeri veriyor?"
"neden asp.net kontroleri selectedIndex değeri için hep 0 veriyor? oysa seçim yapıyorum."

şöyle bir senaryomuz var :

sayfanızın ilk açılış load fonksiyonunda dropdownlist nesnesini dolduruyorsunuz. Ve form her açıldığında işlemin bir postback olup olmadığna bakmaksızın dropdownlist nesnesini sıfırlayıp yeniden dolduruyorsunuz.Eğer böyle ise load fonkiyonu içinde IsPostBack kontrolu yapmalısınız,

sayfa ilk defa açılıyorsa (IsPostBack ==false) dropdownlist doldurulmalı,
ilk defa değilde bir kontrollün bir olayı çağrılacaksa (butona basma, listeden seçme) (IsPostBack ==true) ise dropdownliste hiçbir işlem yapılmamalıdır.

private void Page_Load()
{
if (!IsPostBack)
{
// sayfa ilk kez açıldığında yapılacak işlemler
// dropdownlist,listbox,datagrid gibi veritabanından bilgi çeklip bu nesnelere atanması


}
else
{
// kontrollerden biri harekete geçtiğinde yapılacak işlemler (postback)
}

// sayfanın açılış sırasına bakmaksızın , ilk,2,3,... her zaman yapılacak işlemler
}

13.11.2008

C için e-kitap

  1. c yi basit temelleri ile başlayarak anlatan bir e-kitap indir...
  2. nn

31.10.2008

Ms Sql Server 2005 Express Kurulumu

MS Sql Server 2005 exp indirmek için burdan buyrun...









Bu aşamada özellikle gelişmiş ayarlarları yapabilmek için , alttaki kutucuğun seçili olmamasına dikkat ediyoruz. eğer seçili ise mütakip 4 resimde gösterilen ayarlar varsayılan olarak kurulacaktır. Bizde bunu istemiyoruz.





































hayırlı olsun : )
yalnız bundan sonra SQLServer2005 SSMSEE de kurmamız gerekiyor ki managament studio açabilelim. SQLServer2005 SSMSEE'yi indirmek için burdan buyrun...