SqlDataAdapter.Fill (DataTable) no llena DataTable

Actualmente estoy tratando de recuperar loggings de una database en una aplicación WPF escrita en C #. Estoy usando el lector de datos SQL y parece que se conecta bien, pero el siguiente me da una NullReferenceException:

if (isString == true) { SqlDataAdapter adapter = new SqlDataAdapter("SELECT PartNumber FROM LoanerItems", loanersConnection); DataTable datatable = new DataTable(); adapter.Fill(datatable); for (int i = 0; i < datatable.Rows.Count - 1; i ++) { passBackRecords[i] = datatable.Rows[i].ToString(); } } 

De nuevo, parece que me estoy conectando a la database, pero si ejecuto el depurador, la tabla de datos no parece estar llena.

Mi cadena de connection en caso de que pueda ayudar:

  SqlConnectionStringBuilder scsb = new SqlConnectionStringBuilder(); scsb.DataSource = "LLOYD2\\"; scsb.InitialCatalog = "LoanersTest"; scsb.IntegratedSecurity = true; scsb.ConnectTimeout = 30; 

Actualmente estoy usando una database de testing con dos loggings en lugar de la database finalizada. Intenté usar el Editor de Transact-SQL y los loggings aparecen muy bien.

*EDITAR:

Después de inicializar passBackRecords, lo siguiente comenzó lanzando una exception ArguementOutOfRange:

  SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM LoanerItems", loanersConnection); DataTable datatable = new DataTable(); adapter.Fill(datatable); for (int i = 0; i < datatable.Rows.Count - 1; i++) { passBackRecords[i] = datatable.Rows[i]["BCPartNumber"].toString; } 

He intentado ambos:

 for (int i = 0; i < datatable.Rows.Count - 1; i++) 

y:

 for (int i = 1; i < datatable.Rows.Count; i++) 

Pero ninguno parece funcionar.

 datatable.Rows.Count; 

muestra que hay dos filas en la tabla de datos.

Incluso si se devolvieran cero filas, la DataTable no sería null . Sin embargo, hay un lugar en esta línea:

 passBackRecords[i] = datatable.Rows[i].ToString(); 

eso fallará cuando passBackRecords sea null . Otra posible location es esta:

 .Rows[i].ToString(); 

si el valor de la fila es null , también obtendría una NullReferenceException al llamar a ToString() . Pero casi le pongo dinero al hecho de que aún no ha inicializado passBackRecords .