c# list length for loop