您的位置:首页 > 数据库

datasource with some sql parameters in ()

2013-06-11 19:54 399 查看
<data:VwUserPackageInfoDataSource runat="server" ID="UserPackageInfoDS" SelectMethod="GetPaged">
<Parameters>
<data:SqlParameter Name="WhereClause" UseParameterizedFilters="false"   >
<Filters>
<data:VwUserPackageInfoExpressionBuilder BuilderExpression="AppendEquals" Column="PackageTypeId" ControlID="ddl_package"/>
<data:VwUserPackageInfoExpressionBuilder BuilderExpression="AppendEquals" Column="Validate" ControlID="ddl_status" />
<data:VwUserPackageInfoExpressionBuilder BuilderExpression="AppendContains" Column="FirstName" OnApplyFilter="Name_ApplyFilter"/>
</Filters>
</data:SqlParameter>
</Parameters>
</data:VwUserPackageInfoDataSource>


backend code:

protected void Name_ApplyFilter(object sender, HRASP.Web.Data.SqlFilterEventArgs<HRASP.Entities.VwUserPackageInfoColumn> e)
{
if (!String.IsNullOrWhiteSpace(txtName.Text.Trim()))
{
if (e.FilterBuilder.Length > 0)
{
e.FilterBuilder.BeginGroup();
e.FilterBuilder.AppendContains("", HRASP.Entities.VwUserPackageInfoColumn.FirstName, txtName.Text);
e.FilterBuilder.AppendContains("OR", HRASP.Entities.VwUserPackageInfoColumn.Surname, txtName.Text);
e.FilterBuilder.AppendContains("OR", HRASP.Entities.VwUserPackageInfoColumn.Email, txtName.Text);
e.FilterBuilder.EndGroup();
}
else
{
e.FilterBuilder.AppendContains(HRASP.Entities.VwUserPackageInfoColumn.FirstName, txtName.Text);
e.FilterBuilder.AppendContains("OR", HRASP.Entities.VwUserPackageInfoColumn.Surname, txtName.Text);
e.FilterBuilder.AppendContains("OR", HRASP.Entities.VwUserPackageInfoColumn.Email, txtName.Text);
}
}
}


when use (), there are must some select parameter out side brackets, if there are no parameters out side, will cause error. so check e.filterBuilder. length > 0 or not.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: