-6

我试图从订单表中显示最近的“订单”。但是,即使我在表中有一些订单,我也会收到“没有订单要获取”的消息。代码有什么问题?

public static List<OrderInfo> GetOrdersByRecent (int count)
{
    DbCommand comm = GenericDataAccess.CreateCommand ();
    comm.CommandText = "OrdersGetByRecent";
    DbParameter param = comm.CreateParameter ();
    param.ParameterName = "@Count";
    param.Value = count;
    param.DbType = DbType.Int32;
    comm.Parameters.Add (param);
    return ConvertDataTableToOrders (GenericDataAccess.ExecuteSelectCommand (comm));
}

protected void byRecentGo_Click(object sender, EventArgs e)
{
    try
    {
        int recordCount = Int32.Parse(recentCountTextBox.Text);
        List<OrderInfo> orders = CommerceLibAccess.GetOrdersByRecent(recordCount);
        grid.DataSource = orders;
        if (orders.Count == 0)
        {
            errorLabel.Text = "<br />No orders to get.";
        }
    }
    catch
    {
        errorLabel.Text = "<br />Couldn't get the requested orders!";
    }
    finally
    {
        grid.DataBind();
    }
}
4

2 回答 2

1

你得到零订单,因为

List<OrderInfo> orders = CommerceLibAccess.GetOrdersByRecent(recordCount);

正在返回一个空列表。


它返回一个空列表,因为:

return ConvertDataTableToOrders (GenericDataAccess.ExecuteSelectCommand (comm));

正在返回一个空数据表。

您必须深入研究您的数据表才能弄清楚为什么它认为它是空的。
(也许是因为它实际上是空的??)

于 2013-08-23T17:15:28.070 回答
-1

表字段“OrderID”和 OrderID 的 OrderInfo 属性需要相同

class OrderInfo
{

int OrderID;

}

检查这个...

于 2013-08-23T17:14:09.330 回答