EntitySpaces.ORM.SqlServer
2019.7.23.1
See the version list below for details.
dotnet add package EntitySpaces.ORM.SqlServer --version 2019.7.23.1
NuGet\Install-Package EntitySpaces.ORM.SqlServer -Version 2019.7.23.1
<PackageReference Include="EntitySpaces.ORM.SqlServer" Version="2019.7.23.1" />
paket add EntitySpaces.ORM.SqlServer --version 2019.7.23.1
#r "nuget: EntitySpaces.ORM.SqlServer, 2019.7.23.1"
// Install EntitySpaces.ORM.SqlServer as a Cake Addin #addin nuget:?package=EntitySpaces.ORM.SqlServer&version=2019.7.23.1 // Install EntitySpaces.ORM.SqlServer as a Cake Tool #tool nuget:?package=EntitySpaces.ORM.SqlServer&version=2019.7.23.1
A Very Simple Example
The sample below demonstrates a self join on the Employees table which is looking for all employees with an 'a' in their last name who have people reporting to them. Kind of silly but it shows off the syntax. More samples available here I'm an inline-style link with title
Query and Load
Notice we're creating a "fullName" column on the fly and will be in our JSON as we expect as shown below
EmployeesQuery e = new EmployeesQuery("e");
e.Select
(
e.EmployeeID,
e.LastName, e.FirstName,
(e.LastName + ", " + e.FirstName).As("fullName")
)
.OrderBy(e.LastName.Descending);
EmployeesCollection coll = new EmployeesCollection();
if (coll.Load(e))
{
// We loaded at least one record
}
Notice that the SQL is extremely lean.
NOTE: InnerJoin, RightJoin, LeftJoin, CrossJoin, and FullJoin are all supported, basically the entire SQL API is supported.
SQL Generated and executed from the Query Above
SELECT
e.[EmployeeID],
e.[LastName],
e.[FirstName],
(e.[LastName] + ', ' + e.[FirstName]) AS 'fullName'
FROM [Employees] e
ORDER BY e.[LastName] DESC
Compare that SQL to the SQL generated by a Entity Framework query which does the same thing and you'll be shocked.
JSON resulting from Serialization.
Notice the "fullName" is present, no need to 'new' an anonymous object as extra columns just magically appear
[
{
"EmployeeID": 6,
"LastName": "Suyama",
"FirstName": "Michael",
"fullName": "Suyama, Michael"
},
{
"EmployeeID": 33,
"LastName": "Smith",
"FirstName": "Joe",
"fullName": "Smith, Joe"
},
{
"EmployeeID": 31,
"LastName": "Smith",
"FirstName": "Frank",
"fullName": "Smith, Frank"
}
]
Learn more about Target Frameworks and .NET Standard.
-
- Microsoft.EntityFrameworkCore.SqlServer (>= 2.2.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2020.2.1 | 3,461 | 2/1/2020 |
2020.1.15.1 | 1,023 | 1/15/2020 |
2020.1.15 | 1,016 | 1/15/2020 |
2020.1.10 | 1,076 | 1/10/2020 |
2020.1.3 | 997 | 1/3/2020 |
2019.12.20 | 1,061 | 12/20/2019 |
2019.12.18 | 997 | 12/18/2019 |
2019.12.16 | 1,005 | 12/16/2019 |
2019.12.14 | 967 | 12/14/2019 |
2019.12.12 | 998 | 12/12/2019 |
2019.12.9 | 986 | 12/9/2019 |
2019.12.8.1 | 983 | 12/9/2019 |
2019.12.8 | 1,000 | 12/9/2019 |
2019.12.5 | 969 | 12/6/2019 |
2019.11.21 | 1,031 | 11/21/2019 |
2019.11.20 | 996 | 11/20/2019 |
2019.11.14 | 1,451 | 11/14/2019 |
2019.11.6 | 1,017 | 11/6/2019 |
2019.11.4.1 | 1,068 | 11/4/2019 |
2019.11.4 | 961 | 11/4/2019 |
2019.9.20 | 1,088 | 9/20/2019 |
2019.8.28 | 1,061 | 8/28/2019 |
2019.8.27.1 | 991 | 8/27/2019 |
2019.8.27 | 1,032 | 8/27/2019 |
2019.8.26 | 963 | 8/26/2019 |
2019.8.23 | 1,021 | 8/23/2019 |
2019.8.22 | 961 | 8/22/2019 |
2019.8.14 | 983 | 8/14/2019 |
2019.8.13 | 991 | 8/13/2019 |
2019.8.7 | 1,024 | 8/8/2019 |
2019.7.31 | 1,097 | 7/31/2019 |
2019.7.23.4 | 1,028 | 7/23/2019 |
2019.7.23.3 | 1,846 | 7/23/2019 |
2019.7.23.2 | 2,123 | 7/23/2019 |
2019.7.23.1 | 2,084 | 7/23/2019 |
2019.7.23 | 2,034 | 7/23/2019 |
2019.7.22 | 1,025 | 7/22/2019 |
2019.7.19.1 | 1,041 | 7/19/2019 |
2019.7.19 | 1,015 | 7/19/2019 |
2019.7.7.2 | 1,032 | 7/8/2019 |
2019.7.7.1 | 1,060 | 7/8/2019 |
2019.7.7 | 1,049 | 7/8/2019 |
1.0.0 | 1,067 | 7/1/2019 |