下面是我修改并最初从这里复制的一些代码:
http://msdn.microsoft.com/en-us/library/bb546159.aspx
我在一个目录中搜索文件名,它工作得很好,但我想不出如何使它成为不敏感的。
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(startFolder);
// This method assumes that the application has discovery permissions
// for all folders under the specified path.
IEnumerable<System.IO.FileInfo> fileList = dir.GetFiles("*.*", System.IO.SearchOption.AllDirectories);
//Create the query
IEnumerable<System.IO.FileInfo> fileQuery =
from file in fileList
where file.Extension == ".pdf"
where file.Name.Contains(searchString, StringComparison.OrdinalIgnoreCase)
orderby file.Name
select file;这一行包含错误:
where file.Name.Contains(searchString, StringComparison.OrdinalIgnoreCase)错误是:
Error 1 'string' does not contain a definition for 'Contains' and the best extension method overload 'System.Linq.ParallelEnumerable.Contains<TSource>(System.Linq.ParallelQuery<TSource>, TSource, System.Collections.Generic.IEqualityComparer<TSource>)' has some invalid arguments C:\Users\k5opjdjc\Documents\Visual Studio 2013\Projects\Test_File_Search\Test_File_Search\Controllers\SearchController.cs 30 23 Test_File_Search我已经找了几个小时了,找不到答案。如果有人能帮忙,我会非常感激的。
发布于 2014-10-16 20:31:49
这应该能起作用:
where file.Name.IndexOf(searchString, StringComparison.CurrentCultureIgnoreCase) >= 0(当没有找到匹配的子字符串时,IndexOf返回-1 )
https://stackoverflow.com/questions/26413090
复制相似问题