存储过程为:
ALTER PROCEDURE dbo.selAllCourse
(
@id char
)AS
SELECT ID, NAME, ORGID, ORGNAME, ZONE, STARTDATE, MONEY1, MONEY2, SCRIPT, 
      GENDATE, PRI
FROM [COURSE]
where (ID=@id)
查询过程为:
    public DataSet getAllCoursefromid(string id)
    {
        Open();
        SqlDataAdapter da = new SqlDataAdapter("selAllCourse", con);
        da.SelectCommand.CommandType = CommandType.StoredProcedure;
        SqlParameter Preid = new SqlParameter("@id", SqlDbType.NVarChar, 50);
        Preid.Value = id;
        da.SelectCommand.Parameters.Add(Preid);
        DataSet ds = new DataSet();        da.Fill(ds);        return ds;    }
页面:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;public partial class showCourse : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
      
        Session["id"] = Request.QueryString["ID"];
        if (Session["id"] != null)
        {
           
            DataBase db = new DataBase();
            DataSet ds = new DataSet();
            string   id = Request.QueryString["ID"];
            ds = db.getAllCoursefromid(id);                           this.Label6.Text = ds.Tables[0].Rows[0]["NAME"].ToString();
                this.Label7.Text = ds.Tables[0].Rows[0]["ORGNAME"].ToString();
                this.Label8.Text = ds.Tables[0].Rows[0]["ZONE"].ToString();
                this.Label9.Text = ds.Tables[0].Rows[0]["STARTDATE"].ToString();
                this.Label10.Text = ds.Tables[0].Rows[0]["MONEY1"].ToString();
                this.Label13.Text = ds.Tables[0].Rows[0]["SCRIPT"].ToString();
         
            
        }
    }
}
请问这是哪里错了,运行结果说在位置0处没有任何行啊?
谢谢急用!!!

解决方案 »

  1.   

    条件里面 ID=@id改成[ID]=@id看下
      

  2.   

    查询没查到信息,datatable中没有数据
      

  3.   

    ID=@id改成[ID]=@id这个还是不行
    数据库里面是有数据的
      

  4.   

      da.SelectCommand.Parameters.Add(new SqlParameters("@id",id));
    你直接给试试。。
    里面的类型是char 你传的是字符串。。
    但不太确定你试试。。
    没有环境唉。