■31911 / inTopicNo.1) |
SqlDataSourceを使って・・・ |
□投稿者/ 皇麟 (1回)-(2009/01/30(Fri) 01:53:58)
|
分類:[ASP.NET (VB)]
開発環境
Windows XP
Visual Basic 2005
SQL Server 2005
こんばんわ。友人の代理で質問しています。
タイトル通り、今のプログラムでは使っていませんが、SqlDataSourceを使ってやる方法を教えてください。
よろしくお願いします。
ソース
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
DataMake(9)
End Sub
'パラメータの値からGridViewのデータを生成する処理
Protected Sub DataMake(ByVal flg As Integer)
Dim cn As New SqlConnection
Dim cmd As New SqlCommand
Dim dr As SqlDataReader
'接続情報
cn.ConnectionString = "Data Source=VZEMI-6BN8VC1BH;Initial Catalog=Sample;Integrated Security=True"
cn.Open()
'パラメータクエリ
cmd.Connection = cn
cmd.CommandText = "SELECT [書籍名], [著者No], [出版No], [画像], [Publish_date] FROM [T書籍] WHERE Publish_date BETWEEN @a AND @b"
Dim fromDate As Date '開始日付
Dim toDate As Date '終了日付
'Label2.Text = DropDownList1.SelectedValue 'Debug用に選択した値をラベルに出力
Select Case DropDownList1.SelectedValue
Case 9 'すべて
'現在の日付セット
toDate = Now.Date
fromDate = "1950/01/01"
Case 1 '1年以内の本
toDate = Now.Date
fromDate = DateAdd(DateInterval.Year, -1, toDate)
Case 2 '2年以内の本
toDate = Now.Date
fromDate = DateAdd(DateInterval.Year, -2, toDate)
End Select
'パラメータに値を代入
cmd.Parameters.AddWithValue("a", fromDate)
cmd.Parameters.AddWithValue("b", toDate)
'実行
dr = cmd.ExecuteReader
GV1.DataSource = dr
GV1.DataBind()
'終了処理
dr.Close()
cn.Close()
End Sub
Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
DataMake(DropDownList1.SelectedValue)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>無題のページ</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem Value="9">すべて</asp:ListItem>
<asp:ListItem Value="1">1年以内の書籍</asp:ListItem>
<asp:ListItem Value="2">2年以内の書籍</asp:ListItem>
</asp:DropDownList>
<asp:GridView ID="GV1" runat="server">
</asp:GridView>
</div>
</form>
</body>
</html>
|
|