当前位置:甜馍馍地理信息网 >> 网站开发 >> 综合知识 >> 正文 >>  [阅读资讯:在ASP.NET中使用SQL的IN操作]

在ASP.NET中使用SQL的IN操作

[ 来源:Internet | 时间:2005年08月13日 | 收藏本文 ] 【

  这篇文章将建立一列包含CheckBox控件的DataGrid,这个控件允许用户对明细浏览进行多列选择。如果没有恢复对于动态SQL获得该功能的一种方法,那么必须使用IN操作。

  在文章的结尾,我们写了一个SQL Server用户自定义函数(UDF),为了将一个字符串分解成带分隔符的子字符串。在这篇文章中,我们能看到这样一个UDF如何派得上用场。我们将建立一个web表单,在此用户可以通过选择checkbox控件而选择一些在DataGrid中的记录。对这些被检查的记录的明细将会出现在表单中的另一个DataGrid中。这个表单像来如图所示。

  在下面显示了我们用来建立表单的ASPX。注意:如何使用TemplateColumn和Checkbox控件增加DataGrid列。我们也使用DataGrid的DataKeyField属性来告诉对象,在数据库记录的哪一个字段将会包含第一行的关键字标示符。  

  

 

  

 

  

 

    <form id="Form1" method="post" runat="server">

  <asp:DataGrid id="DataGrid1" runat="server"

     AutoGenerateColumns="False" DataKeyField="EmployeeID">

   <Columns>

    <asp:TemplateColumn>

     <ItemTemplate>

      <asp:CheckBox runat="server" ID="EmployeeCheckBox" />

     </ItemTemplate>

    </asp:TemplateColumn>

   <asp:TemplateColumn>

    <ItemTemplate>

     <%# DataBinder.Eval(Container.DataItem, "LastName") %>,

     <%# DataBinder.Eval(Container.DataItem, "FirstName") %>

    </ItemTemplate>

   </asp:TemplateColumn>

  </Columns>

  </asp:DataGrid>

  

  <hr>

  

  <asp:Button id="Orders" runat="server" Text="View Orders"></asp:Button>

  <hr>

  <asp:DataGrid ID="DataGrid2" Runat="server" AutoGenerateColumns="True" />

  </form>

  当表单加载初始化时,需要组装顶端的DataGrid。代码使用Enterprise Library来存取SQL Sever Northwind例子数据库并且执行“SELECT EmployeeID,FirstName,LastName FROM Employees”这一语句。加载事件的代码如下:

  

  private void Page_Load(object sender, System.EventArgs e)

  {

   if(!Page.IsPostBack)

   {

    Database db = DatabaseFactory.CreateDatabase();

    DBCommandWrapper dbCommandWrapper;

  using(dbCommandWrapper = db.GetSqlStringCommandWrapper(SELECT_EMPLOYEES))

    {

     using (IDataReader dataReader = db.ExecuteReader(dbCommandWrapper))

     {

      DataGrid1.DataSource = dataReader;

      DataGrid1.DataBind();

     }

    }

   }

  }

【推荐本文】 【打印本页】 【返回顶部

>> 相关文章:

● 上一篇文章:关于ASP访问ACCESS数据的错误的探讨
● 下一篇文章:有关网页制作的一些基本概念
最新文章
推荐文章