DynamicQueryStringParameter 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
쿼리 문자열 값을 검색하여 데이터 소스 제어에 대한 절을 만드는 Where 데 사용되는 매개 변수 컬렉션을 자동으로 생성합니다.
public ref class DynamicQueryStringParameter : System::Web::UI::WebControls::Parameter, System::Web::DynamicData::IWhereParametersProvider
public class DynamicQueryStringParameter : System.Web.UI.WebControls.Parameter, System.Web.DynamicData.IWhereParametersProvider
type DynamicQueryStringParameter = class
inherit Parameter
interface IWhereParametersProvider
Public Class DynamicQueryStringParameter
Inherits Parameter
Implements IWhereParametersProvider
- 상속
- 구현
예제
다음 예제에서는 컨트롤에 DynamicQueryStringParameter 데이터를 GridView 표시할 때 개체를 필터로 사용하는 방법을 보여줍니다. 컨트롤에는 GridView 외래 키 값을 사용하여 쿼리 문자열 값을 설정하는 링크를 만드는 개체가 포함되어 TemplateField 있습니다.
<%@ 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">
protected void Page_Init(object sender, EventArgs e)
{
// Registers the data-bound control with
// the DynamicDataManager control.
DynamicDataManager1.RegisterControl(ProductsGridView);
// Initializes the URL for the View All link
// to the current page.
ViewAllLink.NavigateUrl = Request.Path;
}
protected string GetFilterPath()
{
// Retrieves the current data item.
var productItem = (Product)GetDataItem();
if (productItem.ProductCategory != null)
{
// Creates a URL that has a query string value
// set to the foreign key value.
return Request.Path + "?ProductCategoryID="
+ productItem.ProductCategoryID.ToString();
}
return string.Empty;
}
protected string GetProductCategory()
{
// Returns the value for the Name column
// in the relationship table.
var productItem = (Product)GetDataItem();
if (productItem.ProductCategory != null)
{
return productItem.ProductCategory.Name;
}
return string.Empty;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>DynamicQueryStringParameter Example</title>
<link href="~/Site.css" rel="stylesheet" type="text/css" />
</head>
<body class="template">
<form id="form1" runat="server">
<div>
<h2>DynamicQueryStringParameter Example</h2>
<asp:DynamicDataManager ID="DynamicDataManager1" runat="server"
AutoLoadForeignKeys="true" />
<asp:GridView ID="ProductsGridView" runat="server"
AutoGenerateColumns="false"
DataSourceID="ProductsDataSource"
AllowPaging="true"
CssClass="gridview">
<Columns>
<asp:DynamicField DataField="Name" />
<asp:DynamicField DataField="ProductNumber" />
<asp:DynamicField DataField="Color" />
<asp:TemplateField HeaderText="Category">
<ItemTemplate>
<a runat="server" href='<%# GetFilterPath() %>'>
<asp:Label runat="server" ID="ProductCategory" Text='<%# GetProductCategory() %>' />
</a>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<br />
<div class="bottomhyperlink">
<asp:HyperLink runat="server" ID="ViewAllLink" Text="View All Records" />
</div>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the AdventureWorksLT sample database. -->
<asp:LinqDataSource ID="ProductsDataSource" runat="server"
TableName="Products"
ContextTypeName="AdventureWorksLTDataContext" >
<WhereParameters>
<asp:DynamicQueryStringParameter Name="ProductCategory" />
</WhereParameters>
</asp:LinqDataSource>
</div>
</form>
</body>
</html>
<%@ 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">
Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs)
' Registers the data-bound control with
' the DynamicDataManager control.
DynamicDataManager1.RegisterControl(ProductsGridView)
' Initializes the URL for the View All link
' to the current page.
ViewAllLink.NavigateUrl = Request.Path
End Sub
Protected Function GetFilterPath() As String
' Retrieves the current data item.
Dim productItem = CType(GetDataItem(), Product)
If Not (productItem.ProductCategory Is Nothing) Then
' Creates a URL that has a query string value
' set to the foreign key value.
Return Request.Path + "?ProductCategoryID=" + productItem.ProductCategoryID.ToString()
End If
Return String.Empty
End Function
Protected Function GetProductCategory() As String
' Returns the value for the Name column
' in the relationship table.
Dim productItem = CType(GetDataItem(), Product)
If Not (productItem.ProductCategory Is Nothing) Then
Return productItem.ProductCategory.Name
End If
Return String.Empty
End Function
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>DynamicQueryStringParameter Example</title>
<link href="~/Site.css" rel="stylesheet" type="text/css" />
</head>
<body class="template">
<form id="form1" runat="server">
<div>
<h2>DynamicQueryStringParameter Example</h2>
<asp:DynamicDataManager ID="DynamicDataManager1" runat="server"
AutoLoadForeignKeys="true" />
<asp:GridView ID="ProductsGridView" runat="server"
AutoGenerateColumns="false"
DataSourceID="ProductsDataSource"
AllowPaging="true"
CssClass="gridview">
<Columns>
<asp:DynamicField DataField="Name" />
<asp:DynamicField DataField="ProductNumber" />
<asp:DynamicField DataField="Color" />
<asp:TemplateField HeaderText="Category">
<ItemTemplate>
<a runat="server" href='<%# GetFilterPath() %>'>
<asp:Label runat="server" ID="ProductCategory" Text='<%# GetProductCategory() %>' />
</a>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<br />
<div class="bottomhyperlink">
<asp:HyperLink runat="server" ID="ViewAllLink" Text="View All Records" />
</div>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the AdventureWorksLT sample database. -->
<asp:LinqDataSource ID="ProductsDataSource" runat="server"
TableName="Products"
ContextTypeName="AdventureWorksLTDataContext" >
<WhereParameters>
<asp:DynamicQueryStringParameter Name="ProductCategory" />
</WhereParameters>
</asp:LinqDataSource>
</div>
</form>
</body>
</html>
설명
클래스 DynamicQueryStringParameter 는 ASP.NET 동적 데이터 기능을 사용하는 페이지에서 사용됩니다. 클래스는 DynamicQueryStringParameter 쿼리 문자열 값을 검색하여 테이블의 Parameter 기본 키, 외래 키 및 부울 열에 대한 개체 컬렉션을 생성합니다.
기본 키의 경우 다른 매개 변수를 제공하지 않고 개체를 DynamicQueryStringParameter 추가할 수 있습니다. 동적 데이터는 기본 키 또는 키에 대한 매개 변수를 생성합니다. 외세 키 또는 부울 열의 Name 경우 필터링할 열의 이름으로 속성을 설정해야 합니다.
클래스를 DynamicQueryStringParameter 사용하려면 페이지에 컨트롤을 DynamicDataManager 추가해야 하며 메서드를 사용하여 DynamicDataManager.RegisterControl 데이터 바인딩된 컨트롤을 DynamicDataManager 컨트롤에 등록해야 합니다.
생성자
| Name | Description |
|---|---|
| DynamicQueryStringParameter() |
DynamicQueryStringParameter 클래스의 새 인스턴스를 초기화합니다. |
속성
| Name | Description |
|---|---|
| ConvertEmptyStringToNull |
개체가 바인딩된 값을 변환할지 |
| DbType |
매개 변수의 데이터베이스 형식을 가져오거나 설정합니다. (다음에서 상속됨 Parameter) |
| DefaultValue |
메서드가 호출될 때 매개 변수가 초기화되지 않을 바인딩된 값인 경우 매개 변수의 기본값을 Evaluate(HttpContext, Control) 지정합니다. (다음에서 상속됨 Parameter) |
| Direction |
개체가 컨트롤에 Parameter 값을 바인딩하는 데 사용되는지 또는 컨트롤을 사용하여 값을 변경할 수 있는지 여부를 나타냅니다. (다음에서 상속됨 Parameter) |
| IsTrackingViewState |
개체가 뷰 상태에 대한 변경 내용을 저장하고 있는지 여부를 Parameter 나타내는 값을 가져옵니다. (다음에서 상속됨 Parameter) |
| Name |
매개 변수의 이름을 가져오거나 설정합니다. (다음에서 상속됨 Parameter) |
| Size |
매개 변수의 크기를 가져오거나 설정합니다. (다음에서 상속됨 Parameter) |
| Type |
매개 변수의 형식을 가져오거나 설정합니다. (다음에서 상속됨 Parameter) |
| ViewState |
동일한 페이지에 대한 여러 요청에서 개체의 Parameter 뷰 상태를 저장하고 복원할 수 있는 상태 정보 사전을 가져옵니다. (다음에서 상속됨 Parameter) |
메서드
| Name | Description |
|---|---|
| Clone() |
현재 Parameter 인스턴스의 중복을 반환합니다. (다음에서 상속됨 Parameter) |
| Equals(Object) |
지정된 개체가 현재 개체와 같은지 여부를 확인합니다. (다음에서 상속됨 Object) |
| Evaluate(HttpContext, Control) |
InvalidOperationException 모든 경우에 예외를 throw합니다. |
| GetDatabaseType() |
현재 Parameter 인스턴스의 DbType CLR 형식과 동일한 값을 가져옵니다. (다음에서 상속됨 Parameter) |
| GetHashCode() |
기본 해시 함수로 사용됩니다. (다음에서 상속됨 Object) |
| GetType() |
현재 인스턴스의 Type 가져옵니다. (다음에서 상속됨 Object) |
| GetWhereParameters(IDynamicDataSource) |
쿼리 문자열 값을 검색하여 테이블 열 Parameter 에 대해 자동으로 생성되는 개체 컬렉션을 반환합니다. |
| LoadViewState(Object) |
데이터 원본 뷰의 이전에 저장된 뷰 상태를 복원합니다. (다음에서 상속됨 Parameter) |
| MemberwiseClone() |
현재 Object단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
| OnParameterChanged() |
개체를 OnParametersChanged(EventArgs) 포함하는 컬렉션의 ParameterCollection 메서드를 Parameter 호출합니다. (다음에서 상속됨 Parameter) |
| SaveViewState() |
페이지가 서버에 다시 게시된 이후 개체의 뷰 상태에 대한 변경 내용을 Parameter 저장합니다. (다음에서 상속됨 Parameter) |
| SetDirty() |
개체의 Parameter 상태가 뷰 상태에 기록되도록 개체를 표시합니다. (다음에서 상속됨 Parameter) |
| ToString() |
이 인스턴스의 값을 해당하는 문자열 표현으로 변환합니다. (다음에서 상속됨 Parameter) |
| TrackViewState() |
개체가 Parameter 컨트롤의 ViewState 개체에 저장되고 동일한 페이지에 대한 요청 간에 유지될 수 있도록 개체가 뷰 상태에 대한 변경 내용을 추적하도록 합니다. (다음에서 상속됨 Parameter) |
명시적 인터페이스 구현
| Name | Description |
|---|---|
| ICloneable.Clone() |
현재 Parameter 인스턴스의 중복을 반환합니다. (다음에서 상속됨 Parameter) |
| IStateManager.IsTrackingViewState |
개체가 뷰 상태에 대한 변경 내용을 저장하고 있는지 여부를 Parameter 나타내는 값을 가져옵니다. (다음에서 상속됨 Parameter) |
| IStateManager.LoadViewState(Object) |
데이터 원본 뷰의 이전에 저장된 뷰 상태를 복원합니다. (다음에서 상속됨 Parameter) |
| IStateManager.SaveViewState() |
페이지가 서버에 다시 게시된 이후 개체의 뷰 상태에 대한 변경 내용을 Parameter 저장합니다. (다음에서 상속됨 Parameter) |
| IStateManager.TrackViewState() |
개체가 Parameter 컨트롤의 ViewState 개체에 저장되고 동일한 페이지에 대한 요청 간에 유지될 수 있도록 개체가 뷰 상태에 대한 변경 내용을 추적하도록 합니다. (다음에서 상속됨 Parameter) |