Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kerinshelton/entityframeworkcore.sqlserver.extensions.contains
Superfast way to join a SQL table with an object list using EntityFrameworkCore
https://github.com/kerinshelton/entityframeworkcore.sqlserver.extensions.contains
contains entity-framework-core join list sql-server
Last synced: 11 days ago
JSON representation
Superfast way to join a SQL table with an object list using EntityFrameworkCore
- Host: GitHub
- URL: https://github.com/kerinshelton/entityframeworkcore.sqlserver.extensions.contains
- Owner: kerinshelton
- Created: 2019-04-18T01:55:16.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2019-04-18T01:56:32.000Z (almost 6 years ago)
- Last Synced: 2025-01-20T16:00:03.565Z (11 days ago)
- Topics: contains, entity-framework-core, join, list, sql-server
- Language: C#
- Size: 5.86 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# EntityFrameworkCore.SqlServer.Extensions.Contains
## Installing via NuGet
```powershell
Install-Package EntityFrameworkCore.SqlServer.Extensions.Contains
```## Example
Create a search model with 2 params
```csharp
public class CarSearch
{
public int Id { get; set; }
public string Model { get; set; }
}var carSearchObjects = new List();
```Your join would resemble something like this, which cant be done as the join would be between an in memory object list and a sql server table:
```csharp
from c in context.Cars
join o in carSearchObjects
on new { Id = c.Id, Model = c.Model } equals new { Id = o.Id, Model = o.Model }
select m;
```## Usage
```csharp
using EntityFrameworkCore.SqlServer.Extensions.Contains;using (var context = new DbContext())
{
var carSearch = context.Cars.Take(800).Select(x => new { x.Model, x.Id }).ToList();var filtered = context.Cars.Contains(carSearch, "Cars", false, c => c.Model, c => c.Id );
Console.WriteLine(filtered.Count());
}```