我是一个Asp.net初学者,我在页面中拖拽了一个SqlDataSource,可是我怎莫在后台代码里取得SqlDataSource返回的结果记录集中的指定记录上指定字段的值?

解决方案 »

  1.   

    DataSet MyDataSet = new DataSet();
    this.Lb1.Text=(string)MyDataSet.Tables["Detail"].Rows[0]["FenXi"].ToString();
      

  2.   

    DataTable dt=Sql数据记录集
    int rows=0Foreach(DataRow dr in dt.Rows)
    {
         rows++;
         if (rows==指定记录号)
             {
                  return dr[字段];
             }
    }
      

  3.   

    楼上的简单多了
    类型 val;
    val=(类型)MyDataSet.Tables["Detail"].Rows[0]["FenXi"].ToString();
    类型就是你指定字段的数据类型
      

  4.   

    我用的是Asp.net 2.0你们说的怎么没有SqlDataSource?你们说的是1.1吧
      

  5.   

    你有没有加以下代码:
    using System.Data.SqlData;
      

  6.   

    你说的是1.1阿,2.0里面没有System.Data.SqlData的namespace的
      

  7.   

    用Select()方法返回一个IEnumerable.GetEnumerator()IEnumerator可以用foreach遍历每一个对象都可以造型为DataRow.
      

  8.   

    dsTitles = new SqlDataSource();
            dsTitles.ConnectionString = ConfigurationManager.ConnectionStrings["pubs"].ConnectionString;
            dsTitles.SelectCommand = "Select title_id, title, type, notes from Titles";
            dsTitles.EnableCaching = true;
            dsTitles.SqlCacheDependency = "pubs:Titles";        IEnumerator enumerator = dsTitles.Select(new DataSourceSelectArguments()).GetEnumerator();        while (enumerator.MoveNext())
            {
                Response.Write("<br/>title: " + ((DataRowView)enumerator.Current).Row["title"].ToString());
            }
      

  9.   

    dreammaster(天涯) 老大我安你的方法可以了,我马上揭帖,我在问一下,你的是遍历了一遍,我只想取第一个怎么办?谢谢谢谢谢谢谢谢!
      

  10.   

    如果不是要取下边的,直接使用enumerator.Current默认的是第一个,Reset方法可以让指针定位到第一个上。
      

  11.   

    IEnumerator enumerator = SqlDataSource1.Select(new DataSourceSelectArguments()).GetEnumerator();
            while (enumerator.MoveNext())
            {
                str = ((DataRowView)enumerator.Current).Row["ID"].ToString();
                break;
            }