NorthwindDataSet.订单DataTable dt = new NorthwindDataSet.订单DataTable();
NorthwindDataSetTableAdapters.订单TableAdapter ada = new NorthwindDataSetTableAdapters.订单TableAdapter();
            ada.Fill(dt);            NorthwindDataSet.订单Row row = dt.FindBy订单ID(11077);
            NorthwindDataSet.订单明细Row[] r =row.Get订单明细Rows();
 
以上代码运行时出现如下错误:           
无法将类型为“订单Row[]”的对象强制转换为类型“订单明细Row[]”
请问这是什么原因,该如何解决?Get订单明细Rows()的方法:(Visual Studio自动生成的)
public 订单明细Row[] Get订单明细Rows() {
                return ((订单明细Row[])(base.GetChildRows(this.Table.ChildRelations["订单订单明细"])));
            }

解决方案 »

  1.   

    代码我没试过,要不你这样试试。NorthwindDataSet.订单Row[] rows = dt.FindBy订单ID(11077);
    NorthwindDataSet.订单明细Row[] r =row[0].Get订单明细Rows();
      

  2.   

    dt.FindBy订单ID(int 订单ID)返回的是 订单Row 而不是 订单Row[]
      

  3.   

    对不起开始没仔细看。是不是BUG啊?
    NorthwindDataSet.OrdersDataTable dt = new NorthwindDataSet.OrdersDataTable();
    NorthwindDataSetTableAdapters.OrdersTableAdapter adapter = new WindowsApplication8.NorthwindDataSetTableAdapters.OrdersTableAdapter();
    NorthwindDataSet.OrdersRow row =  dt.FindByOrderID(11077);
    //NorthwindDataSet.Order_DetailsRow[] rows = row.GetOrder_DetailsRows();
    NorthwindDataSet.Order_DetailsRow[] rows = row.GetChildRows("FK_Order_Details_Orders") as NorthwindDataSet.Order_DetailsRow[];