private static Treasure HandleID() { Treasure r = new Treasure(); //look for empty id int id = 25000; TreasureList pl = Session.Current.Scenario.Treasures as TreasureList; pl.SmallToBig = true; pl.IsNumber = true; pl.PropertyName = "ID"; pl.ReSort(); foreach (Treasure p in pl) { if (p.ID == id) { id++; } else if (p.ID > id) { break; } } r.ID = id; return(r); }