ASP.NET 核心剃须刀中的过滤问题
Problems with filtering in ASP.NET core razor
我是 c# ASP.NET razor 页面的新手,我正在使用 Microsoft 培训中的示例来构建应用程序。当我尝试从电影 table 中搜索像 "Godzilla" 这样的项目时,下面的代码有效。问题是,如果我尝试在 "Godzilla"、"GhostBusters" 和 "Kazzoky" 上搜索,它 returns 为空。
所以如果 searchString 是 "Godzilla",我得到的结果与 "Kazzoky" 和 "Ghostbusters" 相同,当我将 "Godzilla,Kazzoky,Ghostbusters" 作为 searchString 传递时,结果是空白页。
请帮忙!!
public async Task OnGetAsync()
{
var movies = from m in _context.Movie
select m;
if (!string.IsNullOrEmpty(SearchString))
{
movies = movies.Where(s => s.Title.Contains(SearchString));
}
Movie = await movies.ToListAsync();
}
我试过了
零件 = parts.Where(s =>searchString.Contains(s.Title)); //没用
我也试过了
电影 = movies.Where(s => s.Title.包含(哪里(s=>SearchString.Contains(s.Title))));
但是它抛出了异常...
试试这个。
movies = movies.Where(s => SearchString.Contains(s.Title));
如果您的搜索是逗号分隔的,则需要将其拆分:
var searchTerms = SearchString.Split(',');
movies = movies.Where(s => searchTerms.Contain(s.Title));
感谢大家的投入。我已经解决了问题。
电影 = movies.Where(s => SearchString.Contains(s.Title));
但我是针对错误的数据集对其进行测试的。例如,在 "Gho" 上的一次搜索将 return 捉鬼敢死队但是当你只想搜索标题的一部分时这很好,因为你不能完全记住。
我是在做这个假设,这就是我遇到这个问题的原因。
感谢大家的贡献,非常感谢。
我是 c# ASP.NET razor 页面的新手,我正在使用 Microsoft 培训中的示例来构建应用程序。当我尝试从电影 table 中搜索像 "Godzilla" 这样的项目时,下面的代码有效。问题是,如果我尝试在 "Godzilla"、"GhostBusters" 和 "Kazzoky" 上搜索,它 returns 为空。
所以如果 searchString 是 "Godzilla",我得到的结果与 "Kazzoky" 和 "Ghostbusters" 相同,当我将 "Godzilla,Kazzoky,Ghostbusters" 作为 searchString 传递时,结果是空白页。
请帮忙!!
public async Task OnGetAsync()
{
var movies = from m in _context.Movie
select m;
if (!string.IsNullOrEmpty(SearchString))
{
movies = movies.Where(s => s.Title.Contains(SearchString));
}
Movie = await movies.ToListAsync();
}
我试过了
零件 = parts.Where(s =>searchString.Contains(s.Title)); //没用
我也试过了 电影 = movies.Where(s => s.Title.包含(哪里(s=>SearchString.Contains(s.Title))));
但是它抛出了异常...
试试这个。
movies = movies.Where(s => SearchString.Contains(s.Title));
如果您的搜索是逗号分隔的,则需要将其拆分:
var searchTerms = SearchString.Split(',');
movies = movies.Where(s => searchTerms.Contain(s.Title));
感谢大家的投入。我已经解决了问题。
电影 = movies.Where(s => SearchString.Contains(s.Title));
但我是针对错误的数据集对其进行测试的。例如,在 "Gho" 上的一次搜索将 return 捉鬼敢死队但是当你只想搜索标题的一部分时这很好,因为你不能完全记住。
我是在做这个假设,这就是我遇到这个问题的原因。
感谢大家的贡献,非常感谢。