【发布时间】:2011-07-25 13:24:58
【问题描述】:
我正在使用 Visual Studio 2010 创建一个 ASP Web 应用程序。我正在尝试使用网格视图实现搜索功能,我将在其中将 ADO 选择命令传递到数据集并用我想要的 SQL 填充数据网格。我知道这对于 winforms 和 datagridviews 是可能的,但由于某种原因,它在我的 ASP 应用程序上表现得很奇怪。这是一些代码...
protected void btn_search_Click(object sender, EventArgs e)
{
SqlConnection cs = new SqlConnection("Data Source=WILSON-PC; Initial Catalog=KamManOnline; Integrated Security=TRUE");
SqlDataAdapter da = new SqlDataAdapter();
DataSet ds = new DataSet();
da.SelectCommand = new SqlCommand("SELECT * FROM vw_orderView WHERE Supplier = @Supplier", cs);
da.SelectCommand.Parameters.Add("@Supplier", SqlDbType.VarChar).Value = ddl_SupplierView.Text.ToString();
ds.Clear();
da.Fill(ds);
gv_search.DataSource = ds.Tables[0];
gv_search.DataBind();
}
发生的情况是它挑选出适量的数据,但没有在网格视图上显示。例如,假设我有 3 个字段作为供应商的 Wilson。当我单击搜索按钮时,它会显示 3 行,但它们是空的。有什么想法或其他方法可以解决这个问题吗?谢谢!
附:我尝试使用数据绑定向导,但最终我希望在搜索中具有更大的灵活性,例如
SELECT * FROM vw_orderView WHERE (Supplier = @Supplier OR @Supplier IS NULL).
我尝试在查询生成器中编写此代码,但我需要添加一些 if 条件来说明供应商是否有值或为空(复选框)。如果这是正确的方法,那么请说出来。谢谢
【问题讨论】:
-
在 ASPX/ASCX 布局中显示您的网格定义
标签: c# asp.net sql visual-studio-2010 ado.net