日期:2014-05-17  浏览次数:20455 次

AspNetPager控件实现分页查询,但找不出哪里有错,进来看看(分不多了,以后会追加的)。。。
实现的效果是点击按钮Button1查找TextBox1的内容显示出来,但是在select语句那(第25行)提示Incorrect syntax near the keyword 'Table'错误,我实在不知道哪里有错,找不出,所以请教,Table是一个表,word是里面的字段。
代码如下:

public partial class _Default : System.Web.UI.Page
{
    DataClassesDataContext db = new DataClassesDataContext();
    const string vsKey = "searchCriteria"; //ViewState key
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            searchOrders(string.Empty);
        }
    }
    protected void AspNetPager1_PageChanged(object src, EventArgs e)
    {
        searchOrders((string)ViewState[vsKey]);
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        AspNetPager1.CurrentPageIndex = 1;
        string s = "where word=" + TextBox1.Text;
        ViewState[vsKey] = s;
        searchOrders(s);
    }
    void searchOrders(string sWhere)
    {
        SqlDataSource1.SelectCommand = "select word from Table"+sWhere;
        DataTable dv = (DataTable)SqlDataSource1.Select(DataSourceSelectArguments.Empty);
      //  AspNetPager1.RecordCount = dv.Count;
        AspNetPager1.RecordCount = db.Table.Count();
        PagedDataSource pds = new PagedDataSource();
        pds.DataSource = dv.DefaultView;
        pds.AllowPaging = true;
        pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1;
        pds.PageSize = AspNetPager1.PageSize;
        Repeater1.DataSource = pds;
        Repeater1.DataBind();
    }
}


------解决方案--------------------
TAble是sql server关键词哟,你得用[table]吧,其实你把表名起为table就是个错误