有谁会做主从表吗?用两个GridView实现,下面的这个是别人写的代码,可是string SQL =  "SELECT * FROM [OrderDetails] WHERE [OrderID]='" + OrderID + "'";这句看不懂,其中'" + OrderID + "'是哪里来的啊?在哪里定义啊?有谁能帮我看看吗?public partial class MasterDetail2 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            string SQL = "SELECT * FROM [Orders]";
            GridView1.DataSource = Binding(SQL);
            GridView1.DataKeyNames = new string[] { "OrderID" };
            GridView1.DataBind();
        }
     }    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    {
        string OrderID = Convert.ToString(GridView1.SelectedValue);
        string SQL =  "SELECT * FROM [OrderDetails] WHERE [OrderID]='" + OrderID + "'";
        DetailsView1.DataSource = Binding(SQL);
        DetailsView1.DataBind();
    }
    /**//// <summary>
    /// 执行SQL语句返回一个数据表
    /// </summary>
    /// <param name="SQL">所要执行的SQL语句</param>
    /// <returns>DataTable</returns>
    protected DataTable Binding(string SQL)
    {
        SqlConnection myConn = new SqlConnection(ConfigurationManager.ConnectionStrings["AppConnectionString1"].ConnectionString);
        DataTable dt=new DataTable();
        SqlDataAdapter myAdapter = new SqlDataAdapter(SQL, myConn);
        myAdapter.Fill(dt);
        return dt;    }
}

解决方案 »

  1.   

     string OrderID = Convert.ToString(GridView1.SelectedValue);
     在这里定义的
      

  2.   

    string OrderID = Convert.ToString(GridView1.SelectedValue); 
    这不是定义了么。
      

  3.   

    OrderID是Orders表的主键
    当点击了GridView的某一行的选择按钮时,得到了该行的所对应的OrderID,
    既在代码中就是以下:
    string OrderID = Convert.ToString(GridView1.SelectedValue);
      

  4.   

    楼主需要先了解一下如何堆字符串。
    "SELECT * FROM [OrderDetails] WHERE [OrderID]='" + OrderID + "'"中
    SELECT * FROM [OrderDetails] WHERE [OrderID]='是字符串的第一部分," + 代表紧跟着这个字符串要加一个变量,其实也是一个已赋值的字符串,这样在编译后,此字符串就能组成最终需要的string
      

  5.   

     string OrderID = Convert.ToString(GridView1.SelectedValue);中定义了OrderID,'"+OrderID+"'只是SQL在c#中的应用格式,[OrderID]='" + OrderID + "'"中[OrderID]是数据库[OrderDetails]的一个字段,[OrderDetails]也可以写成OrderDetails~~~继续努力~~~