【发布时间】:2011-05-24 12:25:58
【问题描述】:
各位专家,
当我传递带有报价的 serach 时,我收到以下错误,例如abb的
The expression contains an invalid string constant: '.
无论如何我可以解决这个问题吗?另外,如果你能给我发一个关于过滤器表达式的所有可用函数的链接,比如替换、投射等,那就太好了。
谢谢
【问题讨论】:
标签: asp.net
各位专家,
当我传递带有报价的 serach 时,我收到以下错误,例如abb的
The expression contains an invalid string constant: '.
无论如何我可以解决这个问题吗?另外,如果你能给我发一个关于过滤器表达式的所有可用函数的链接,比如替换、投射等,那就太好了。
谢谢
【问题讨论】:
标签: asp.net
用两个单独的 ' 替换 ' 查询有效。
【讨论】:
在SqlDataSource中添加
onfiltering="SqlDataSource1_Filtering"
函数背后的代码:
protected void SqlDataSource1_Filtering(object sender, SqlDataSourceFilteringEventArgs e)
{
SqlDataSource1.FilterExpression.Replace("{0}", e.ParameterValues[0].ToString().Replace("'","''" );
}
【讨论】:
对于遇到此问题的任何人。下面的代码解决了这个问题:
protected void btnSearch_Click(object sender, EventArgs e)
{
DS.SelectCommand =
"SELECT ReportName, ReportType,
FROM Table
WHERE ReportName LIKE @param
ORDER BY ReportType Desc";
DS.SelectParameters.Add("Param", searchTxtBox.Text.Replace("'", "''"));
DS.DataBind();
ListView1.DataBind();
}
【讨论】: