Easily the best and most comprehensive article on the subject : http://www.sommarskog.se/dyn-search-2005.html
Regardless of which implementation you pick from Aaron's article, I always log the search criteria and execution time in this situation. Just because you provide search flexibility, it doesn't mean most users will make use of it. You usally find most searches occur on a limited number of fields and logging the search criteria will allow you to create targetted indexes.
- Keyword search with SQL Server
- LINQ Keyword search with orderby relevance based on count (LINQ to SQL)
- Search keyword using linq in asp.net with c#back end
- Accessing SQL Server time in code with LINQ
- Implementing advanced search with And and Or keyword search
- LINQ, Search sql server table column with contain function
- Search records with code pattern in column value c#
- Code equivalent to the 'let' keyword in chained LINQ extension method calls
- Is it possible to use Full Text Search (FTS) with LINQ?
- Entity Framework, Code First and Full Text Search
- What does this C# code with an "arrow" mean and how is it called?
- Search two lists for at least one match with LINQ
- Paginated search results with LINQ to SQL
- Nice examples of using .NET 4 dynamic keyword with Linq?
- How to search Hierarchical Data with Linq
- Forgiving/Fuzzy search with LINQ
- Using LINQ to search a byte array for all subarrays that start/stop with certain byte
- Periodic InvalidCastException and "The server failed to resume the transaction" with Linq
- C# search query with linq
- Dictionary search with Linq
- When to prefer joins expressed with SelectMany() over joins expressed with the join keyword in Linq
- Why doesn't this code compile in VS2010 with .NET 4.0?
- Does ascending keyword exist purely for clarity when used with orderby?
- How to introduce Let keyword inside Linq statement with Group by
- Unwieldy LINQ statement with multiple search criteria
- Why is this code with PredicateBuilder not working?
- Search for words in SQL Server index
- Querying elastic search with linq using NEST
- How do I implement a search feature with Entity Framework?
- Can you advise me a resource with LINQ/lambda code exercises?
- Linq query for joining tables Mvc Asp
- Create a JOIN at the run time in a EF6 extended DbContext class
- How to group in C# linq based on sequential values of a property and another property value?
- Awkward Linq Sort
- Entity Framework Include syntax
- How remove duplicate item by a property value in a List<>
- Check in list and Filter collection using Linq
- How to group by date while taking into account the timezone in linq2db (CONVERT_TZ)?
- Initialize var to empty
- How do I remove items from generic list, based on multiple conditions and using linq
- Compare two datatables to find matching values
- linq selecting into custom object
- C# - Select programmable attribute in Select clause
- Dynamically Linq Select Cast To IEnumerable
- IndexOutOfRangeException on Queryable.Single
- I need to add a unique id to instances of a collection using LINQ
- Using linq to find out the nearest data with the given latitude and longitude
- error with linq join
- Check if a list contains all of another lists items when comparing on one property
- Linq ordering by multiple values