我用正则表达式来LINQ-SQL查询中删除HTML标签,但下面的错误已抛出:使用替换法在LINQ-SQL查询
方法
错在这里'System.String Replace(System.String, System.String, System.String)'
不支持作为执行SQL。
Help helpDBSession = new Help();
IEnumerable<Article> articles = null;
if (lang.ToLower() == "en")
{
articles = helpDBSession.Articles.Where(artilce => artilce.NameEn.Contains(searchPattern) ||
System.Text.RegularExpressions.Regex.Replace(artilce.ContentEn, "<(.|\n)*?>",String.Empty).Contains(searchPattern));
}
else
{
articles = helpDBSession.Articles.Where(artilce => artilce.NameAr.Contains(searchPattern) ||
System.Text.RegularExpressions.Regex.Replace(artilce.ContentAr, "<(.|\n)*?>", String.Empty).Contains(searchPattern));
}
if (articles != null && articles.Count() > 0)
{
return articles.ToList();
}
如果你提供的实际LINQ代码这将有助于。 – 2010-07-10 13:28:54
'String.Replace'函数只需要2个参数并返回一个'string'。你能告诉我们你的代码吗? – 2010-07-10 13:29:45
@Matt - 好点。我认为这是一个String的静态函数,但看起来像是一个本地函数。 – Kobi 2010-07-10 13:32:32