如何在asp.net C#中将数据转换为数组形式?
我有以下代码,datatable只包含一行。我希望在数组中保留所有数据(一行)值。下面是我的代码:如何在asp.net C#中将数据转换为数组形式?,c#,asp.net,sql-server,C#,Asp.net,Sql Server,我有以下代码,datatable只包含一行。我希望在数组中保留所有数据(一行)值。下面是我的代码: SqlCommand cmdp = new SqlCommand("SELECT [1],[2],[3],[4],[5],[6],[7].[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[
SqlCommand cmdp = new SqlCommand("SELECT [1],[2],[3],[4],[5],[6],[7].[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78] from [Seatlist] where (([FlightNo] = @FN) AND ([Origin] = @Ori) AND ([Destination] = @Des) AND ([DepartureTimeDay] = @Dep) AND ( [DepartureTimeMonths] = @Dem) AND ( [DepartureTimeYears] = @Dey) AND ( [DepartureTime] = @Det))", con);
cmdp.Parameters.AddWithValue("@Seatlist", SeatNo.Text);
cmdp.Parameters.AddWithValue("@FN", FlightNo.Text);
cmdp.Parameters.AddWithValue("@Ori", Origin.Text);
cmdp.Parameters.AddWithValue("@Des", Destination.Text);
cmdp.Parameters.AddWithValue("@Dep", DepartDay.Text);
cmdp.Parameters.AddWithValue("@Dem", DepartMonth.Text);
cmdp.Parameters.AddWithValue("@Dey", DepartureTimeYears.Text);
cmdp.Parameters.AddWithValue("@Det", DepartureTime.Text);
DataTable dtable = new DataTable();
dtable.Load(cmdp.ExecuteReader());
DataRow[] array = dtable.AsEnumerable().Take(1).ToArray();
object[] array1 = array[0].ItemArray;
int[] array2 = Array.ConvertAll(array1, (p => Convert.ToInt32(p)));
但我得到了以下错误:
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: The multi-part identifier "7.8" could not be bound.
正如@Kami所指出的,您的代码非常好,但是您在char 66-73上得到了一个
[7].[8]
,而不是[7],[8]
,正如@Kami所指出的,您的代码非常好,但是您在char 66-73上得到了一个[7].[8]
,而不是[7],[8]
SqlCommand cmdp = new SqlCommand("SELECT [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78] from [Seatlist] where (([FlightNo] = @FN) AND ([Origin] = @Ori) AND ([Destination] = @Des) AND ([DepartureTimeDay] = @Dep) AND ( [DepartureTimeMonths] = @Dem) AND ( [DepartureTimeYears] = @Dey) AND ( [DepartureTime] = @Det))", con);
cmdp.Parameters.AddWithValue("@Seatlist", SeatNo.Text);
cmdp.Parameters.AddWithValue("@FN", FlightNo.Text);
cmdp.Parameters.AddWithValue("@Ori", Origin.Text);
cmdp.Parameters.AddWithValue("@Des", Destination.Text);
cmdp.Parameters.AddWithValue("@Dep", DepartDay.Text);
cmdp.Parameters.AddWithValue("@Dem", DepartMonth.Text);
cmdp.Parameters.AddWithValue("@Dey", DepartureTimeYears.Text);
cmdp.Parameters.AddWithValue("@Det", DepartureTime.Text);
DataTable dtable = new DataTable();
dtable.Load(cmdp.ExecuteReader());
DataRow[] array = dtable.AsEnumerable().Take(1).ToArray();
object[] array1 = array[0].ItemArray;
int[] array2 = Array.ConvertAll(array1, (p => Convert.ToInt32(p)));
它现在应该可以正常工作了
SqlCommand cmdp = new SqlCommand("SELECT [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78] from [Seatlist] where (([FlightNo] = @FN) AND ([Origin] = @Ori) AND ([Destination] = @Des) AND ([DepartureTimeDay] = @Dep) AND ( [DepartureTimeMonths] = @Dem) AND ( [DepartureTimeYears] = @Dey) AND ( [DepartureTime] = @Det))", con);
cmdp.Parameters.AddWithValue("@Seatlist", SeatNo.Text);
cmdp.Parameters.AddWithValue("@FN", FlightNo.Text);
cmdp.Parameters.AddWithValue("@Ori", Origin.Text);
cmdp.Parameters.AddWithValue("@Des", Destination.Text);
cmdp.Parameters.AddWithValue("@Dep", DepartDay.Text);
cmdp.Parameters.AddWithValue("@Dem", DepartMonth.Text);
cmdp.Parameters.AddWithValue("@Dey", DepartureTimeYears.Text);
cmdp.Parameters.AddWithValue("@Det", DepartureTime.Text);
DataTable dtable = new DataTable();
dtable.Load(cmdp.ExecuteReader());
DataRow[] array = dtable.AsEnumerable().Take(1).ToArray();
object[] array1 = array[0].ItemArray;
int[] array2 = Array.ConvertAll(array1, (p => Convert.ToInt32(p)));
[7].[8]
可能应该是[7],[8]
。SQL中的
是一个多部分标识符-可能重复的[7].[8]
应该是[7],[8]
。SQL中的
是一个多部分标识符-可能是