none
Dizin aralık dışında hatası RRS feed

  • Soru

  • Merhaba arkadaşlar bir uygulama yapacağım fakat hata alıyorum. Hatayı araştırdım neden olduğunu biliyorum. Ama nasıl çözeceğimi bulamadım.

    Bir kullanıcı tablom var burada 7 satır var.

    Birde çalışma tablom var. Burada kullanıcı tablosundaki kişiler günlük çalışmaları giriyor. Burada aynı kullanıcı farklı günlerde veri girebilir. Aşağıda kodlarımı paylaştım. 

    Aldığım hata "Dizin aralık dışındaydı. Negatif olmamalı ve koleksiyonun boyutundan küçük olmalıdır. Parametre adı: index "

    List<Calisma> calisma = new List<Calisma>();
                efor.Add(new EforTable { UserID = 1, Name = "Emre Yılmaz", Saat = 8, EforDate = DateTime.Now.AddDays(0) });
                efor.Add(new EforTable { UserID = 2, Name = "Omar Uymaz", Saat = 2, EforDate = DateTime.Now.AddDays(-2) });
                efor.Add(new EforTable { UserID = 3, Name = "Emre Yılmaz", Saat = 2, EforDate = DateTime.Now.AddDays(-5) });
    
    
                List<Users> user = new List<Users>();
                user.Add(new Users { UserID = 1, Name = "Emre Yılmaz", });
                user.Add(new Users { UserID = 2, Name = "Omar Uymaz", });
                user.Add(new Users { UserID = 3, Name = "Kamil Taş", });
                user.Add(new Users { UserID = 4, Name = "Ekrem Porto", });
                user.Add(new Users { UserID = 5, Name = "Rabiye Sel", });
                user.Add(new Users { UserID = 6, Name = "Tolga Tele", });
                user.Add(new Users { UserID = 7, Name = "Kemal Kel", });
    
    
                List<Holidays> holiday = new List<Holidays>();
                holiday.Add(new Holidays { ID = 1, StartDate = DateTime.Now.AddDays(0), FinisDate = DateTime.Now.AddDays(-2) });
                holiday.Add(new Holidays { ID = 2, StartDate = DateTime.Now.AddDays(-3), FinisDate = DateTime.Now.AddDays(-4) });
                holiday.Add(new Holidays { ID = 3, StartDate = DateTime.Now.AddDays(-5), FinisDate = DateTime.Now.AddDays(-6) });
                holiday.Add(new Holidays { ID = 4, StartDate = DateTime.Now.AddDays(-5), FinisDate = DateTime.Now.AddDays(-6) });
                holiday.Add(new Holidays { ID = 5, StartDate = DateTime.Now.AddDays(-5), FinisDate = DateTime.Now.AddDays(-5) });
                holiday.Add(new Holidays { ID = 6, StartDate = DateTime.Now.AddDays(-5), FinisDate = DateTime.Now.AddDays(-8) });
    
    
    
    
                DateTime gecenhafta = DateTime.Now;
                gecenhafta.AddDays(-2);
                int ToplamSaat = 40;
    
                var query = efor.Where(w => w.Name == "Emre Yılmaz").Select(s => s.Saat).Sum();
                var efort = efor.Select(s => s.EforDate).ToList();
                var eforu = efor.Select(s => s.Name).ToList();
                var ouser = user.Select(s => s.Name).ToList();
                var holtb = holiday.Select(s => s.StartDate == gecenhafta).ToList();
    
    
                for (int i = 0; i < user.Count; i++)
                {
    
                    string kt = gecenhafta.ToString("dd/MM/yyyy");
                    string euser = eforu[i].ToString();
                    string osu = ouser[i].ToString();
    
    
    
                    if (osu == euser)
                    {
    
                        ToplamSaat = ToplamSaat - query - 3;
    
                    }
                    
    
                    else
                    {
                        ToplamSaat = 40;
                    }
    
                    MessageBox.Show(osu + " - " + ToplamSaat);
    
                }

    22 Haziran 2019 Cumartesi 09:02

Tüm Yanıtlar