EntityDataSource.WhereParameters 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取用于创建 WHERE 子句的参数的集合。
public:
property System::Web::UI::WebControls::ParameterCollection ^ WhereParameters { 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 WhereParameters { get; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.WhereParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property WhereParameters As ParameterCollection
属性值
用于创建 WHERE 子句的参数。
实现
- 属性
示例
以下示例中的 .aspx 文件中的 XML 标记从控件中检索值,并将其作为参数传递给 属性 Where 。
<asp:EntityDataSource ID="SalesOrderHeader" runat="server"
ConnectionString="name=AdventureWorksEntities"
DefaultContainerName="AdventureWorksEntities" EnableDelete="True"
EnableInsert="True" EnableUpdate="True" EntitySetName="SalesOrderHeader"
EntityTypeFilter="" OrderBy="it.TotalDue DESC" Select=""
Where="it.OnlineOrderFlag = TRUE AND it.TotalDue > @ordercost">
<WhereParameters>
<asp:ControlParameter ControlID="costLimit" DbType="Int32"
DefaultValue="2500" Name="ordercost" PropertyName="Text" />
</WhereParameters>
</asp:EntityDataSource>
前面的 XML 示例与以下 ObjectQuery<T> 名为 onlineOrders
的相同:
ObjectQuery<SalesOrderHeader> onlineOrders =
context.SalesOrderHeader
.Where("it.OnlineOrderFlag = TRUE AND it.TotalDue > @ordercost",
new ObjectParameter("ordercost", orderCost))
.OrderBy("it.TotalDue DESC");
注解
Where与 类的 方法一ObjectQuery<T>样,可以将参数传递给分配给 属性的Where谓词。 控件 WhereParameters 的 EntityDataSource 属性指定一个 ParameterCollection ,其中包含要提供给查询的 WHERE 子句的参数。 属性 WhereParameters 使用命名参数来引用在提供给 Where 属性的字符串中指定的参数。
WhereParameters如果未设置 属性,则不进行参数替换。 WHERE 子句中以符号 “开头@"
的所有参数名称必须在 中 ParameterCollection具有匹配的名称。 不允许对 中的 ParameterCollection参数使用 Null 值。