Vatansever
Asistan
- Katılım
- 23 Ağustos 2007
- Mesajlar
- 405
- Reaksiyon puanı
- 1
- Puanları
- 18
aşağıdaki kodu kullanarak bir DataTable oluşturuyorum
Bu tabloya bilgileri girerken otomatik sayıyı girmem gerek normalde sadece giriş yapılacaksa hiç silme olmayacaksa aşağıdaki kod işe yarıyor çünkü kaç satır varsa o satır adedini giriyor yani hep varolan id 'deki son rakamın bir üstü
Ama benim tabloda silme işlemleride oluyor bu nedenle yukarıdaki kod işe yaramıyor aşağıdaki gibi bir fonksiyon hazırlamayı denedim ama olmadı
Bu fonksiyon için kodumda alttaki gibi
Bu fonksiyonu dsytablo içinde id sutununu okuyup 0varmı 1varmı 2varmı 3varmı diye kontrol etsin olmayan rakamı bulduğunda otomat = i şeklinde otomat'a atasın ve döngü devam etmeden çıkılsın ama başarılı olamadım yardım edermisiniz?
Yukarıdaki döngü çok hatalı biliyorum iki döngünün iç içe olması lazım alttaki gibi ama olmayan rakamı bulmayı başaramadım
Kod:
Public Sub dsytablom()
dsytablo.Columns.Add("id", GetType(Integer))
dsytablo.Columns.Add("dosya", GetType(String))
dsytablo.Columns.Add("konumu", GetType(String))
dsytablo.Columns.Add("boyut", GetType(String))
Dim primaryKey(0) As DataColumn
primaryKey(0) = dsytablo.Columns("id")
dsytablo.PrimaryKey = primaryKey
End Sub
Kod:
dsytablo.Rows.Add(dsytablo.Rows.Count, Path.GetFileName(File), File)
Kod:
Public Function otomat() As Integer
'OTOMATİK SAYI
For i As Integer = 0 To 100000
If dsytablo.Rows.Count > -1 Then
If dsytablo.Rows(i).Item(0) = i Then
Else
otomat = i
Exit Function
End If
End If
Next
End Function
Kod:
dsytablo.Rows.Add(otomat, Path.GetFileName(File), File)
Yukarıdaki döngü çok hatalı biliyorum iki döngünün iç içe olması lazım alttaki gibi ama olmayan rakamı bulmayı başaramadım
Kod:
Public Function otomat() As Integer
'OTOMATİK SAYI
For x As Integer = 0 To dsytablo.Rows.Count ' Var olan satır sayısından bir fazlası yeterli olur yani - 1 yok
For i As Integer = 0 To dsytablo.Rows.Count - 1
Next
Next
End Function