QueryStringParameterとは? わかりやすく解説

QueryStringParameter クラス

メモ : このクラスは、.NET Framework version 2.0 で新しく追加されたものです。

HTTP 要求のクエリ文字列フィールドの値をパラメータ オブジェクトにバインドします。

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Class QueryStringParameter
    Inherits Parameter
Dim instance As QueryStringParameter
public class QueryStringParameter : Parameter
public ref class QueryStringParameter : public
 Parameter
public class QueryStringParameter extends Parameter
public class QueryStringParameter extends
 Parameter
解説解説

QueryStringParameter クラスを使用すると、HTTP 要求のクエリ文字列に渡されたフィールド値を、パラメータ クエリまたはコマンドで使用するためのパラメータにバインドできます。このフィールドは、QueryString コレクションから取得されます。QueryStringParameter が指定されていても、対応するクエリ文字列の名前/値ペアが渡されないと、データをパラメータにバインドするコントロールから例外がスローされます。同様に、クエリ文字列フィールドの名前だけを渡して、対応する値を渡さなかった場合、データは表示されません。このような状況を防ぐには、必要に応じて DefaultValue を設定します。

QueryStringParameter クラスには、Parameter クラスから継承されたプロパティに加え、バインド先のクエリ文字列値の名前を識別する QueryStringField プロパティが用意されています。

メモ重要 :

QueryStringParameter は、クエリ文字列によって渡された値は一切検証せず、そのままの値を使用します。多くの場合、データ ソース コントロールで発生した Selecting、Updating、Inserting、Deleting などのイベントを処理することによって、QueryStringParameter の値をデータ ソース コントロールで使用される前に検証できます。パラメータの値が検証に合格しなかった場合は、関連付けられた CancelEventArgs クラスの Cancel プロパティを true に設定することによって、データ操作をキャンセルできます。

使用例使用例

QueryStringParameter パラメータを宣言してフィルタとして使用し、GridView コントロールにデータを表示する方法を次のコード例に示します。QueryStringParameter を AccessDataSource コントロールの FilterParameters コレクションに宣言および追加すると、クエリ文字列フィールド "country" の値が対応する FilterExpression 文字列にバインドされます。パラメータに対して DefaultValue が指定されていないため、"country" という名前のフィールドがクエリ文字列に渡されなかった場合、AccessDataSource から NullReferenceException がスローされます。"country" という名前のフィールドが渡された場合でも、対応する値が指定されなかった場合、GridView にデータは表示されません。

<%@ Page language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

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

      <!-- Use a Query String with country=USA
 -->
      <asp:gridview
        id ="GridView1"
        runat="server"
        datasourceid="MyAccessDataSource" />

<!-- Security Note: The AccessDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of
 input from the client. -->

      <asp:accessdatasource
        id="MyAccessDataSource"
        runat="server"
        datafile="Northwind.mdb"
        selectcommand="SELECT EmployeeID, LastName, Address, PostalCode,
 Country FROM Employees"
        filterexpression="Country = '{0}'">
        <filterparameters>
          <asp:querystringparameter name="country"
 type="String" querystringfield="country"
 />
        </filterparameters>
      </asp:accessdatasource>

    </form>
  </body>
</HTML>
<%@ Page language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

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

      <!-- Use a Query String with country=USA -->
      <asp:gridview
        id ="GridView1"
        runat="server"
        datasourceid="MyAccessDataSource" />

<!-- Security Note: The AccessDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client. -->

      <asp:accessdatasource
        id="MyAccessDataSource"
        runat="server"
        datafile="Northwind.mdb"
        selectcommand="SELECT EmployeeID, LastName, Address, PostalCode, Country
 FROM Employees"
        filterexpression="Country = '{0}'">
        <filterparameters>
          <asp:querystringparameter name="country" type="String"
 querystringfield="country" />
        </filterparameters>
      </asp:accessdatasource>
    </form>
  </body>
</HTML>
<%@ Page language="VJ#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

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

      <!-- Use a Query String with country=USA -->
      <asp:GridView
        id ="GridView1"
        runat="server"
        DataSourceMode="DataSet"
        DataSourceID="MyAccessDataSource" />

      <asp:AccessDataSource
        id="MyAccessDataSource"
        runat="server"
        DataFile="Northwind.mdb"
        SelectCommand="SELECT EmployeeID, LastName, Address, PostalCode, Country
 FROM Employees"
        FilterExpression="Country = '@country'">
        <FilterParameters>
          <asp:QueryStringParameter Name="country" Type="String"
 QueryStringField="country" />
        </FilterParameters>
      </asp:AccessDataSource>
    </form>
  </body>
</HTML>

QueryStringParameter を宣言し、SQL パラメータ クエリを使って、Access データベースのデータを表示する方法を次のコード例に示します。GridView コントロールに表示するレコードは、AccessDataSource によって取得されます。GridView は、ユーザーが Northwind Traders Orders テーブルのレコードを選択してボタンをクリックしたときのレコードの順序を更新するためのユーザー インターフェイスを備え、編集することもできます。

<%@Page  Language="VB" %>
<%@Import Namespace="System.Data"
 %>
<%@Import Namespace="System.Data.Common"
 %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<SCRIPT runat="server">
Private Sub UpdateRecords(source As
 Object, e As EventArgs)

  ' This method is an example of batch updating using a
  ' data source control. The method iterates through the rows
  ' of the GridView, extracts each CheckBox from the row and, if
  ' the CheckBox is checked, updates data by calling the Update
  ' method of the data source control, adding required parameters
  ' to the UpdateParameters collection.

  Dim cb As CheckBox
  Dim row As GridViewRow

  For Each row In GridView1.Rows

    cb = CType(row.Cells(0).Controls(1), CheckBox)
    If cb.Checked Then

      Dim oid As String
      oid = CType(row.Cells(1).Text, String)

      Dim param1 As New
 Parameter("date", TypeCode.DateTime, DateTime.Now.ToString())
      MyAccessDataSource.UpdateParameters.Add(param1)

      Dim param2 As New
 Parameter("orderid", TypeCode.String, oid)
      MyAccessDataSource.UpdateParameters.Add(param2)

      MyAccessDataSource.Update()
      MyAccessDataSource.UpdateParameters.Clear()
    End If
  Next
End Sub ' UpdateRecords
</SCRIPT>
<HTML>
  <BODY>
    <FORM runat="server">

<!-- Security Note: The SqlDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of
 input from the client.
     Security Note: To validate the value of
 the QueryStringParameter, handle the Selecting event. -->

      <asp:SqlDataSource
        id="MyAccessDataSource"
        runat="server"
        ProviderName="<%$ ConnectionStrings:MyPasswordProtectedAccess.providerName%>"
        ConnectionString="<%$ ConnectionStrings:MyPasswordProtectedAccess%>"
        SelectCommand="SELECT OrderID, OrderDate, RequiredDate,
 ShippedDate FROM Orders WHERE EmployeeID=?"
        UpdateCommand="UPDATE Orders SET ShippedDate=? WHERE OrderID
 = ?">
        <SelectParameters>
          <asp:QueryStringParameter Name="empId"
 QueryStringField="empId" />
        </SelectParameters>
      </asp:SqlDataSource>

      <asp:GridView
        id ="GridView1"
        runat="server"
        DataSourceID="MyAccessDataSource"
        AllowPaging="True"
        PageSize="10"
        AutoGenerateColumns="False">
          <columns>
            <asp:TemplateField HeaderText="">
              <ItemTemplate>
                <asp:CheckBox runat="server" />
              </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField HeaderText="Order"
 DataField="OrderID" />
            <asp:BoundField HeaderText="Order Date"
 DataField="OrderDate" />
            <asp:BoundField HeaderText="Required Date"
 DataField="RequiredDate" />
            <asp:BoundField HeaderText="Shipped Date"
 DataField="ShippedDate" />
          </columns>
      </asp:GridView>

      <asp:Button
        id="Button1"
        runat="server"
        Text="Update the Selected Records As Shipped"
        OnClick="UpdateRecords" />

      <asp:Label id="Label1" runat="server"
 />

    </FORM>
  </BODY>
</HTML>
<%@Page  Language="C#" %>
<%@Import Namespace="System.Data" %>
<%@Import Namespace="System.Data.Common" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
private void UpdateRecords(Object source, EventArgs
 e)
{
  // This method is an example of batch updating using a
  // data source control. The method iterates through the rows
  // of the GridView, extracts each CheckBox from the row and, if
  // the CheckBox is checked, updates data by calling the Update
  // method of the data source control, adding required parameters
  // to the UpdateParameters collection.
  CheckBox cb;
  foreach(GridViewRow row in this.GridView1.Rows)
 {
    cb = (CheckBox) row.Cells[0].Controls[1];
    if(cb.Checked) {
      string oid = (string) row.Cells[1].Text;
      MyAccessDataSource.UpdateParameters.Add(new Parameter("date"
,TypeCode.DateTime,DateTime.Now.ToString()));
      MyAccessDataSource.UpdateParameters.Add(new Parameter("orderid"
,TypeCode.String,oid));
      MyAccessDataSource.Update();
      MyAccessDataSource.UpdateParameters.Clear();
    }
  }
}
</SCRIPT>

<HTML>
  <BODY>
    <FORM runat="server">

<!-- Security Note: The SqlDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the
 Selecting event. -->

      <asp:SqlDataSource
        id="MyAccessDataSource"
        runat="server"
        ProviderName="<%$ ConnectionStrings:MyPasswordProtectedAccess.providerName%>"
        ConnectionString="<%$ ConnectionStrings:MyPasswordProtectedAccess%>"
        SelectCommand="SELECT OrderID, OrderDate, RequiredDate, ShippedDate
 FROM Orders WHERE EmployeeID=?"
        UpdateCommand="UPDATE Orders SET ShippedDate=? WHERE OrderID = ?">
        <SelectParameters>
          <asp:QueryStringParameter Name="empId" QueryStringField="empId"
 />
        </SelectParameters>
      </asp:SqlDataSource>

      <asp:GridView
        id ="GridView1"
        runat="server"
        DataSourceID="MyAccessDataSource"
        AllowPaging="True"
        PageSize="10"
        AutoGenerateColumns="False">
          <columns>
            <asp:TemplateField HeaderText="">
              <ItemTemplate>
                <asp:CheckBox runat="server" />
              </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField HeaderText="Order" DataField="OrderID"
 />
            <asp:BoundField HeaderText="Order Date" DataField="OrderDate"
 />
            <asp:BoundField HeaderText="Required Date" DataField="RequiredDate"
 />
            <asp:BoundField HeaderText="Shipped Date" DataField="ShippedDate"
 />
          </columns>
      </asp:GridView>

      <asp:Button
        id="Button1"
        runat="server"
        Text="Update the Selected Records As Shipped"
        OnClick="UpdateRecords" />

      <asp:Label id="Label1" runat="server" />

    </FORM>
  </BODY>
</HTML>
<%@Page  Language="VJ#" %>
<%@Import Namespace="System.Data" %>
<%@Import Namespace="System.Data.Common" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
    private void UpdateRecords(Object source,
 System.EventArgs e)
    {
        // This method is an example of batch updating using a
        // data source control. The method iterates through the rows
        // of the GridView, extracts each CheckBox from the row and,
 if
        // the CheckBox is checked, updates data by calling the Update
        // method of the data source control, adding required parameters
        // to the UpdateParameters collection.
        CheckBox cb;
        for (int iCtr = 0; 
                iCtr < this.GridView1.get_Rows().get_Count();
 iCtr++) {
            GridViewRow row = this.GridView1.get_Rows().get_Item(iCtr);
            cb = (CheckBox)row.get_Cells().get_Item(0).get_Controls().get_Item(1);
            if (cb.get_Checked()) {
                String oid = (String)(row.get_Cells().get_Item(1).get_Text());
                MyAccessDataSource.get_UpdateParameters().Add(new
 Parameter(
                    "date", System.TypeCode.DateTime, System.DateTime.get_Now().ToString()));
                MyAccessDataSource.get_UpdateParameters().Add(new
 Parameter(
                    "orderid", System.TypeCode.String, oid));
                MyAccessDataSource.Update();
                MyAccessDataSource.get_UpdateParameters().Clear();
            }
        }
    } //UpdateRecords
</SCRIPT>

<HTML>
  <BODY>
    <FORM runat="server">
<!-- Security Note: The SqlDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the
 Selecting event. -->

      <asp:SqlDataSource
        id="MyAccessDataSource"
        runat="server"
        ProviderName="System.Data.OleDb"
        ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\uncpath\Northwind_PasswordProtected.mdb;Mode=3;Jet
 OLEDB:Database Password=myPassword;"
        SelectCommand="SELECT OrderID, OrderDate, RequiredDate, ShippedDate
 FROM Orders WHERE EmployeeID=?"
        UpdateCommand="UPDATE Orders SET ShippedDate=? WHERE OrderID = ?">
        <SelectParameters>
          <asp:QueryStringParameter Name="empId" QueryStringField="empId"
 />
        </SelectParameters>
      </asp:SqlDataSource>
      <asp:GridView
        id ="GridView1"
        runat="server"
        DataSourceID="MyAccessDataSource"
        AllowPaging="True"
        PageSize="10"
        AutoGenerateColumns="False">
          <Columns>
            <asp:TemplateField HeaderText="">
              <ItemTemplate>
                <asp:CheckBox runat="server" />
              </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField HeaderText="Order" DataField="OrderID"
 />
            <asp:BoundField HeaderText="Order Date" DataField="OrderDate"
 />
            <asp:BoundField HeaderText="Required Date" DataField="RequiredDate"
 />
            <asp:BoundField HeaderText="Shipped Date" DataField="ShippedDate"
 />
          </Columns>
      </asp:GridView>

      <asp:Button
        id="Button1"
        runat="server"
        Text="Update the Selected Records As Shipped"
        OnClick="UpdateRecords" />

      <asp:Label id="Label1" runat="server" />

    </FORM>
  </BODY>
</HTML>
継承階層継承階層
System.Object
   System.Web.UI.WebControls.Parameter
    System.Web.UI.WebControls.QueryStringParameter
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
QueryStringParameter メンバ
System.Web.UI.WebControls 名前空間
ControlParameter クラス
CookieParameter クラス
FormParameter クラス
ProfileParameter クラス
SessionParameter
その他の技術情報
データ ソース コントロールとパラメータの使用

QueryStringParameter コンストラクタ ()

メモ : このコンストラクタは、.NET Framework version 2.0 で新しく追加されたものです。

QueryStringParameter クラスの名前のない新しいインスタンスを初期化します。

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Dim instance As New QueryStringParameter
public QueryStringParameter ()
public:
QueryStringParameter ()
public QueryStringParameter ()
public function QueryStringParameter ()
解説解説
使用例使用例

QueryStringParameter コンストラクタを使用して、新しい QueryStringParameter パラメータを作成し、それを AccessDataSource コントロールの SelectParameters コレクションに追加する方法を次のコード例に示します。

Dim empIdParam As New QueryStringParameter()
empIdParam.Name = "empId"
empIdParam.QueryStringField = "empId"

AccessDataSource1.SelectParameters.Add(empIdParam)
QueryStringParameter empIdParam = new QueryStringParameter();
empIdParam.Name = "empId";
empIdParam.QueryStringField = "empId";

AccessDataSource1.SelectParameters.Add(empIdParam);
QueryStringParameter empIdParam = new QueryStringParameter();

empIdParam.set_Name("empId");
empIdParam.set_QueryStringField("empId");
AccessDataSource1.get_SelectParameters().Add(empIdParam);

QueryStringParameter は、次の AccessDataSource コントロールに追加され、Web フォーム上で宣言されています。ListBox コントロールは、フィールド名 "empId"および対応する値をクエリ文字列に指定して Web フォームが読み込まれると、AccessDataSource コントロールを使ってデータをバインドして表示します。

<asp:ListBox
  id ="ListBox2"
  runat="server"
  DataSourceID="AccessDataSource1"
  DataValueField="EmployeeID"
  DataTextField="LastName" />

<asp:AccessDataSource
  id="AccessDataSource1"
  runat="server"
  DataFile="Northwind.mdb"
  SelectCommand="Select EmployeeID, LastName From Employees where
 EmployeeID = ?" />      
<asp:ListBox
  id ="ListBox2"
  runat="server"
  DataSourceID="AccessDataSource1"
  DataValueField="EmployeeID"
  DataTextField="LastName" />

<asp:AccessDataSource
  id="AccessDataSource1"
  runat="server"
  DataFile="Northwind.mdb"
  SelectCommand="Select EmployeeID, LastName From Employees where EmployeeID
 = ?" />

<asp:ListBox
  id ="ListBox2"
  runat="server"
  DataSourceID="AccessDataSource1"
  DataValueField="EmployeeID"
  DataTextField="LastName" />

<asp:AccessDataSource
  id="AccessDataSource1"
  runat="server"
  DataFile="Northwind.mdb"
  SelectCommand="Select EmployeeID, LastName From Employees where EmployeeID
 = ?" />
</asp:AccessDataSource>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
QueryStringParameter クラス
QueryStringParameter メンバ
System.Web.UI.WebControls 名前空間

QueryStringParameter コンストラクタ (String, String)

メモ : このコンストラクタは、.NET Framework version 2.0 で新しく追加されたものです。

バインド先のクエリ文字列フィールドを識別する文字列を指定して、QueryStringParameter クラスの名前付きの新しいインスタンスを初期化します。

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Sub New ( _
    name As String, _
    queryStringField As String _
)
Dim name As String
Dim queryStringField As String

Dim instance As New QueryStringParameter(name,
 queryStringField)
public QueryStringParameter (
    string name,
    string queryStringField
)
public:
QueryStringParameter (
    String^ name, 
    String^ queryStringField
)
public QueryStringParameter (
    String name, 
    String queryStringField
)
public function QueryStringParameter (
    name : String, 
    queryStringField : String
)

パラメータ

name

パラメータの名前。

queryStringField

パラメータ オブジェクトのバインド先のクエリ文字列フィールドの名前。既定値は Empty です。

解説解説
使用例使用例

QueryStringParameter コンストラクタを使って 2 つの QueryStringParameter オブジェクトを作成し、それらを AccessDataSource コントロールの SelectParameters コレクションに追加する方法を次のコード例に示します。クエリ文字列フィールド "employee" および "country" が、有効な値と共にクエリ文字列に渡された場合、GridView コントロールによってデータが表示されます。

<%@ Page language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
Private Sub Page_Load(sender As
 Object, e As EventArgs)
    Dim param1 As New QueryStringParameter("employee",
 "employee")
    MyAccessDataSource.SelectParameters.Add(param1)

    Dim param2 As New QueryStringParameter("country",
 "country")
    MyAccessDataSource.SelectParameters.Add(param2)
End Sub ' Page_Load
</SCRIPT>

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

      <!-- Use a Query String that includes employee=1&country=USA
 -->
      <asp:gridview
        id ="GridView1"
        runat="server"
        datasourceid="MyAccessDataSource" />

<!-- Security Note: The SqlDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of
 input from the client.
     Security Note: To validate the value of
 the QueryStringParameter, handle the Selecting event. -->

      <asp:accessdatasource
        id="MyAccessDataSource"
        runat="server"
        datafile="Northwind.mdb"
        selectcommand="SELECT EmployeeID, LastName, FirstName
                       FROM Employees
                       WHERE EmployeeID = ? AND Country = ? ">
      </asp:accessdatasource>
    </form>
  </body>
</HTML>
<%@ Page language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
private void Page_Load(object sender, System.EventArgs
 e)
{
    MyAccessDataSource.SelectParameters.Add(new QueryStringParameter("employee",
 "employee"));
    MyAccessDataSource.SelectParameters.Add(new QueryStringParameter("country",
  "country"));
}
</SCRIPT>

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

      <!-- Use a Query String that includes employee=1&country=USA -->
      <asp:gridview
        id ="GridView1"
        runat="server"
        datasourceid="MyAccessDataSource" />

<!-- Security Note: The AccessDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the
 Selecting event. -->

      <asp:accessdatasource
        id="MyAccessDataSource"
        runat="server"
        datafile="Northwind.mdb"
        selectcommand="SELECT EmployeeID, LastName, FirstName 
                       FROM Employees
                       WHERE EmployeeID = ? AND Country = ?">
      </asp:accessdatasource>

    </form>
  </body>
</HTML>
<%@ Page Language="VJ#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
    private void Page_Load(Object sender, System.EventArgs
 e)
    {
        MyAccessDataSource.get_SelectParameters().Add(
            new QueryStringParameter("employee", "employee"));
        MyAccessDataSource.get_SelectParameters().Add(
            new QueryStringParameter("country", "country"));

    } //Page_Load
</SCRIPT>

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

        <!-- Use a Query String that includes employee=1&country=USA -->
      <asp:gridview
        id ="GridView1"
        runat="server"
        datasourceid="MyAccessDataSource" />

      <asp:accessdatasource
        id="MyAccessDataSource"
        runat="server"
        datafile="Northwind.mdb"
        selectcommand ="SELECT EmployeeID, LastName, FirstName
          FROM Employees
          WHERE EmployeeID = ? AND Country = ?">
        
      </asp:accessdatasource>
    </form>
  </body>
</HTML>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
QueryStringParameter クラス
QueryStringParameter メンバ
System.Web.UI.WebControls 名前空間
Parameter.Name プロパティ
QueryStringField

QueryStringParameter コンストラクタ (String, TypeCode, String)

メモ : このコンストラクタは、.NET Framework version 2.0 で新しく追加されたものです。

バインド先のクエリ文字列フィールドを識別する文字列を指定して、QueryStringParameter クラスの名前付きの厳密に型指定された新しいインスタンスを初期化します。

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Sub New ( _
    name As String, _
    type As TypeCode, _
    queryStringField As String _
)
Dim name As String
Dim type As TypeCode
Dim queryStringField As String

Dim instance As New QueryStringParameter(name,
 type, queryStringField)
public QueryStringParameter (
    string name,
    TypeCode type,
    string queryStringField
)
public:
QueryStringParameter (
    String^ name, 
    TypeCode type, 
    String^ queryStringField
)
public QueryStringParameter (
    String name, 
    TypeCode type, 
    String queryStringField
)
public function QueryStringParameter (
    name : String, 
    type : TypeCode, 
    queryStringField : String
)

パラメータ

name

パラメータの名前。

type

パラメータが表す型。既定値は Object です。

queryStringField

パラメータ オブジェクトのバインド先のクエリ文字列フィールドの名前。既定値は Empty です。

解説解説
使用例使用例

QueryStringParameter コンストラクタを使って QueryStringParameter オブジェクトを作成し、それを AccessDataSource コントロールの FilterParameters コレクションに追加する方法を次のコード例に示します。クエリ文字列フィールド "employee" および "country" が、有効な値と共にクエリ文字列に渡された場合にのみ、GridView コントロールによってデータが表示されます。

<%@ Page language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
Private Sub Page_Load(sender As
 Object, e As EventArgs)
  Dim countryFilter As QueryStringParameter
  countryFilter = New QueryStringParameter("country",
 TypeCode.String, "country")
  MyAccessDataSource.FilterParameters.Add(countryFilter)
End Sub ' Page_Load
</SCRIPT>

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

      <!-- Use a Query String with country=USA
 -->
      <asp:gridview
        id ="GridView1"
        runat="server"
        datasourceid="MyAccessDataSource" />

<!-- Security Note: The AccessDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of
 input from the client.
     Security Note: To validate the value of
 the QueryStringParameter, handle the Selecting event. -->

      <asp:accessdatasource
        id="MyAccessDataSource"
        runat="server"
        datafile="Northwind.mdb"
        selectcommand="SELECT EmployeeID, LastName, Address, PostalCode,
 Country FROM Employees"
        filterexpression="Country = '{0}'">
      </asp:accessdatasource>
    </form>
  </body>
</HTML>
<%@ Page language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
private void Page_Load(object sender, System.EventArgs
 e)
{
  QueryStringParameter countryFilter =
    new QueryStringParameter("country", TypeCode.String,
 "country");

  MyAccessDataSource.FilterParameters.Add(countryFilter);
}
</SCRIPT>

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

      <!-- Use a Query String with country=USA -->
      <asp:gridview
        id ="GridView1"
        runat="server"
        datasourceid="MyAccessDataSource" />

<!-- Security Note: The AccessDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the
 Selecting event. -->

      <asp:accessdatasource
        id="MyAccessDataSource"
        runat="server"
        datafile="Northwind.mdb"
        selectcommand="SELECT EmployeeID, LastName, Address, PostalCode, Country
 FROM Employees"
        filterexpression="Country = '{0}'">
      </asp:accessdatasource>
    </form>
  </body>
</HTML>
<%@ Page language="VJ#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
private void Page_Load(Object sender, System.EventArgs
 e)
{
    QueryStringParameter countryFilter = new QueryStringParameter("country"
,
        System.TypeCode.String, "country");

    MyAccessDataSource.get_FilterParameters().Add(countryFilter);
} //Page_Load
</SCRIPT>

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

      <!-- Use a Query String with country=USA -->
      <asp:GridView
        id ="GridView1"
        runat="server"
        DataSourceMode="DataSet"
        DataSourceID="MyAccessDataSource" />

      <asp:AccessDataSource
        id="MyAccessDataSource"
        runat="server"
        DataFile="Northwind.mdb"
        SelectCommand="SELECT EmployeeID, LastName, Address, PostalCode, Country
 FROM Employees"
        FilterExpression="Country = '@country'">
      </asp:AccessDataSource>
    </form>
  </body>
</HTML>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
QueryStringParameter クラス
QueryStringParameter メンバ
System.Web.UI.WebControls 名前空間
Parameter.Name プロパティ
QueryStringField

QueryStringParameter コンストラクタ

QueryStringParameter クラスの新しいインスタンスを初期化します。
オーバーロードの一覧オーバーロードの一覧

参照参照

関連項目

QueryStringParameter クラス
QueryStringParameter メンバ
System.Web.UI.WebControls 名前空間

QueryStringParameter コンストラクタ (QueryStringParameter)

メモ : このコンストラクタは、.NET Framework version 2.0 で新しく追加されたものです。

original パラメータで指定されたインスタンスの値を使用して、QueryStringParameter クラスの新しいインスタンスを初期化します。

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Protected Sub New ( _
    original As QueryStringParameter _
)
Dim original As QueryStringParameter

Dim instance As New QueryStringParameter(original)
protected QueryStringParameter (
    QueryStringParameter original
)
protected:
QueryStringParameter (
    QueryStringParameter^ original
)
protected QueryStringParameter (
    QueryStringParameter original
)
protected function QueryStringParameter (
    original : QueryStringParameter
)

パラメータ

original

現在のインスタンスの初期化の基になる QueryStringParameter インスタンス。

解説解説

QueryStringParameter コンストラクタは、QueryStringParameter インスタンスの複製を作成するための Protected コピー コンストラクタです。QueryStringParameter の値 (QueryStringField、Name、Type など) が、すべて新しいインスタンスに転送されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
QueryStringParameter クラス
QueryStringParameter メンバ
System.Web.UI.WebControls 名前空間
Clone

QueryStringParameter プロパティ


パブリック プロパティパブリック プロパティ

プロテクト プロパティプロテクト プロパティ
参照参照

関連項目

QueryStringParameter クラス
System.Web.UI.WebControls 名前空間
ControlParameter クラス
CookieParameter クラス
FormParameter クラス
ProfileParameter クラス
SessionParameter

その他の技術情報

データ ソース コントロールとパラメータの使用

QueryStringParameter メソッド


パブリック メソッドパブリック メソッド

プロテクト メソッドプロテクト メソッド
  名前 説明
プロテクト メソッド Clone オーバーライドされます。 現在の QueryStringParameter インスタンスの複製を返します。
プロテクト メソッド Evaluate オーバーライドされます。 QueryStringParameter オブジェクトの値を更新して返します。
プロテクト メソッド Finalize  Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。)
プロテクト メソッド LoadViewState  データ ソース ビューの、以前保存したビューステートを復元します。 ( Parameter から継承されます。)
プロテクト メソッド MemberwiseClone  現在の Object の簡易コピーを作成します。 ( Object から継承されます。)
プロテクト メソッド OnParameterChanged  Parameter オブジェクトを格納する ParameterCollection コレクションの OnParametersChanged メソッドを呼び出します。 ( Parameter から継承されます。)
プロテクト メソッド SaveViewState  ページがサーバーにポストバックされた時間以降に発生した、Parameter オブジェクトのビューステートへの変更を保存します。 ( Parameter から継承されます。)
プロテクト メソッド SetDirty  Parameter オブジェクトの状態がビューステートで記録されるように、このオブジェクトをマークします。 ( Parameter から継承されます。)
プロテクト メソッド TrackViewState  Parameter オブジェクトがビューステートの変更を追跡するようにします。それにより、変更をコントロールの ViewState オブジェクトに格納して、同じページに対する複数の要求にわたって永続化できます。 ( Parameter から継承されます。)
参照参照

関連項目

QueryStringParameter クラス
System.Web.UI.WebControls 名前空間
ControlParameter クラス
CookieParameter クラス
FormParameter クラス
ProfileParameter クラス
SessionParameter

その他の技術情報

データ ソース コントロールとパラメータの使用

QueryStringParameter メンバ

HTTP 要求のクエリ文字列フィールドの値をパラメータ オブジェクトにバインドします。

QueryStringParameter データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
プロテクト コンストラクタプロテクト コンストラクタ
  名前 説明
プロテクト メソッド QueryStringParameter オーバーロードされます。 QueryStringParameter クラスの新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
プロテクト プロパティプロテクト プロパティ
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
  名前 説明
プロテクト メソッド Clone オーバーライドされます。 現在の QueryStringParameter インスタンスの複製を返します。
プロテクト メソッド Evaluate オーバーライドされます。 QueryStringParameter オブジェクトの値を更新して返します。
プロテクト メソッド Finalize  Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。)
プロテクト メソッド LoadViewState  データ ソース ビューの、以前保存したビューステートを復元します。 (Parameter から継承されます。)
プロテクト メソッド MemberwiseClone  現在の Object の簡易コピーを作成します。 (Object から継承されます。)
プロテクト メソッド OnParameterChanged  Parameter オブジェクトを格納する ParameterCollection コレクションの OnParametersChanged メソッドを呼び出します。 (Parameter から継承されます。)
プロテクト メソッド SaveViewState  ページがサーバーにポストバックされた時間以降に発生した、Parameter オブジェクトのビューステートへの変更を保存します。 (Parameter から継承されます。)
プロテクト メソッド SetDirty  Parameter オブジェクトの状態がビューステートで記録されるように、このオブジェクトをマークします。 (Parameter から継承されます。)
プロテクト メソッド TrackViewState  Parameter オブジェクトがビューステートの変更を追跡するようにします。それにより、変更をコントロールの ViewState オブジェクトに格納して、同じページに対する複数の要求にわたって永続化できます。 (Parameter から継承されます。)
参照参照

関連項目

QueryStringParameter クラス
System.Web.UI.WebControls 名前空間
ControlParameter クラス
CookieParameter クラス
FormParameter クラス
ProfileParameter クラス
SessionParameter

その他の技術情報

データ ソース コントロールとパラメータの使用



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「QueryStringParameter」の関連用語

QueryStringParameterのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



QueryStringParameterのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS