LinqDataSource.SelectParameters 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取在数据检索操作过程中使用的参数的集合。
public:
property System::Web::UI::WebControls::ParameterCollection ^ SelectParameters { System::Web::UI::WebControls::ParameterCollection ^ get(); };
[System.ComponentModel.Browsable(false)]
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.ParameterCollection SelectParameters { get; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.SelectParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property SelectParameters As ParameterCollection
属性值
用于创建 Select 子句的参数。
- 属性
示例
以下示例演示如何使用用户提供的值来计算返回的数据中的值。 用户可以在文本框中输入一个值,该值表示制造天数。 该值除以数据库中表示产品制造天数的值。 返回的值指示在指定的天数内可以生产多少产品。 用户的输入包含在通过 集合的 Select 命令中 SelectParameters 。
Enter number of manufacturing days:
<asp:TextBox Text="1" ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Refresh" /><br />
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AllowSorting="True" AutoGenerateColumns="False" DataSourceID="LinqDataSource1">
<Columns>
<asp:boundfield DataField="Name"
HeaderText="Name"
ReadOnly="True"
SortExpression="Name">
</asp:boundfield>
<asp:boundfield DataField="NumberToManufacture"
HeaderText="Number to Manufacture"
ReadOnly="True"
SortExpression="NumberToManufacture">
</asp:boundfield>
</Columns>
</asp:GridView>
<asp:LinqDataSource
ContextTypeName="ExampleDataContext"
TableName="Products"
Where="DaysToManufacture > 0 "
Select="new (Name, @Days / DaysToManufacture As NumberToManufacture)"
ID="LinqDataSource1"
runat="server">
<SelectParameters>
<asp:ControlParameter
Type="Decimal"
Name="Days"
ControlID="TextBox1"
DefaultValue="1" />
</SelectParameters>
</asp:LinqDataSource>
Enter number of manufacturing days:
<asp:TextBox Text="1" ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Refresh" /><br />
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AllowSorting="True" AutoGenerateColumns="False" DataSourceID="LinqDataSource1">
<Columns>
<asp:boundfield DataField="Name"
HeaderText="Name"
ReadOnly="True"
SortExpression="Name">
</asp:boundfield>
<asp:boundfield DataField="NumberToManufacture"
HeaderText="Number to Manufacture"
ReadOnly="True"
SortExpression="NumberToManufacture">
</asp:boundfield>
</Columns>
</asp:GridView>
<asp:LinqDataSource
ContextTypeName="ExampleDataContext"
TableName="Products"
Where="DaysToManufacture > 0 "
Select="new (Name, @Days / DaysToManufacture As NumberToManufacture)"
ID="LinqDataSource1"
runat="server">
<SelectParameters>
<asp:ControlParameter
Type="Decimal"
Name="Days"
ControlID="TextBox1"
DefaultValue="1" />
</SelectParameters>
</asp:LinqDataSource>
注解
控件 LinqDataSource 使用集合中的 SelectParameters 参数在运行时创建 Select 子句。 如果要在 Select 子句中使用运行时值, SelectParameters 请将参数添加到集合。 例如,可以将参数添加到集合中 SelectParameters ,以表示用户配置文件中的属性。 然后,可以使用该属性和数据源中的值来计算新值。
如果不必在 Run 运行时在 Select 子句中设置值,则不必使用 SelectParameters 集合。 可以在 属性中定义要检索的属性 Select 。 例如,若要从数据库表返回 FirstName
和 LastName
值,请将 设置为 Select “FirstName,LastName”而不使用任何参数。
若要在集合中 SelectParameters 设置值,请在 命名参数的 属性中添加 Select 占位符。 在 Select 子句中,每个参数名称的前面加上 @ 符号。
不能使用集合中的 SelectParameters 参数来表示属性名称。 若要将属性动态设置为 Select 属性的名称,请为 Selecting 事件创建事件处理程序,并根据需要自定义 Select 属性。