Sequel 3.1.4

dotnet add package Sequel --version 3.1.4                
NuGet\Install-Package Sequel -Version 3.1.4                
此命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用了 NuGet 模块的 Install-Package 版本。
<PackageReference Include="Sequel" Version="3.1.4" />                
对于支持 PackageReference 的项目,请将此 XML 节点复制到项目文件中以引用包。
paket add Sequel --version 3.1.4                
#r "nuget: Sequel, 3.1.4"                
#r 指令可用于 F# Interactive 和 Polyglot Notebooks。将其复制到交互式工具或脚本的源代码中以引用包。
// Install Sequel as a Cake Addin
#addin nuget:?package=Sequel&version=3.1.4

// Install Sequel as a Cake Tool
#tool nuget:?package=Sequel&version=3.1.4                

Sequel

NuGet Version build

一个高效的 SQL 构建器,具有模拟实际 SQL 查询编写的接口。

入门指南

SELECT

var sqlBuilder = new SqlBuilder()
  .Select("Id", "Salary")
  .From("dbo.Test");

var sql = sqlBuilder.ToSql(); // .ToString() also works

/*
SELECT Id, Salary FROM dbo.Test
*/

// SELECT with INNER & LEFT JOIN
var sqlBuilder = new SqlBuilder()
  .Select("*")
  .From("dbo.Test t")
  .Join("dbo.Employee e on e.Id = t.EmployeeId")
  .LeftJoin("dbo.Manager m on m.Id = e.ManagerId");

var sql = sqlBuilder.ToSql();

/*
SELECT * FROM dbo.Test t INNER JOIN dbo.Employee e on e.Id = t.EmployeeId LEFT JOIN dbo.Manager m on m.Id = e.ManagerId
*/

INSERT

var sqlBuilder = new SqlBuilder()
  .Insert("dbo.Test")
  .Columns("Name", "Salary")
  .Values("'John'", "50")
  .Values("'Jane'", "100");

var sql = sqlBuilder.ToSql(); // .ToString() also works

/*
INSERT INTO dbo.Test (Name, Salary) VALUES ('John', 50), ('Jane', 100)
*/

UPDATE

var sqlBuilder = new SqlBuilder()
  .Update("dbo.Test")
  .Set("Salary = 100", "ManagerId = 2")
  .Where("EmployeeId = 1");

var sql = sqlBuilder.ToSql(); // .ToString() also works

/*
UPDATE dbo.Test SET Salary = 100, ManagerId = 2 WHERE EmployeeId = 1
*/

DELETE

var sqlBuilder = new SqlBuilder()
  .Delete()
  .From("dbo.Test")
  .Where("EmployeeId = 1");

var sql = sqlBuilder.ToSql(); // .ToString() also works

/*
DELETE FROM dbo.Test WHERE EmployeeId = 1
*/

注入自定义 SQL

您被授予预挂钩和后挂钩直接访问最终 SQL 字符串,以便注入自定义 SQL。

预挂钩在 CTE 或内联声明的情况下很有用。

var sqlBuilder = new SqlBuilder(pre: "WITH cte AS (SELECT 1) ")
  .Select("*")
  .From("cte");

var sql = sqlBuilder.ToSql();

/*
WITH cte AS (SELECT 1) SELECT * FROM cte"
*/

后挂钩在需要获取最近插入的行标识符等情况下很有用。

var sqlBuilder = new SqlBuilder(post: "; SELECT last_insert_rowid();")
  .Insert("dbo.Test")
  .Into("Name", "Salary")
  .Value("'Pim'", "50");

var sql = sqlBuilder.ToSql();

/*
INSERT INTO dbo.Test (Name, Salary) VALUES ('Pim', 50); SELECT last_insert_rowid();
*/

示例使用 Dapper

using(var conn = new SqlConnection("your connection string")
{
  var sqlBuilder = new SqlBuilder()
    .Select("Id", "Salary")
    .From("dbo.Test")
    .Where("Id", "@Id");

  var sql = sqlBuilder.ToSql(); // .ToString() also works
  /*
  SELECT Id, Salary FROM dbo.Test WHERE Id = @Id
  */

  var result = conn.Query(sql, new { Id = 1 });
}

发现虫子了?

为此有 一个问题

许可协议

NHLPA 工程师 在安大略省多伦多用爱心构建。遵循 MIT 许可协议

产品 兼容和额外的计算目标框架版本。
.NET net5.0 已计算。  net5.0-windows 已计算。  net6.0 已计算。  net6.0-android 已计算。  net6.0-ios 已计算。  net6.0-maccatalyst 已计算。  net6.0-macos 已计算。  net6.0-tvos 已计算。  net6.0-windows 已计算。  net7.0 已计算。  net7.0-android 已计算。  net7.0-ios 已计算。  net7.0-maccatalyst 已计算。  net7.0-macos 已计算。  net7.0-tvos 已计算。  net7.0-windows 已计算。  net8.0 已计算。  net8.0-android 已计算。  net8.0-browser 已计算。  net8.0-ios 已计算。  net8.0-maccatalyst 已计算。  net8.0-macos 已计算。  net8.0-tvos 已计算。  net8.0-windows 已计算。 
.NET Core netcoreapp2.0 已计算。  netcoreapp2.1 已计算。  netcoreapp2.2 已计算。  netcoreapp3.0 已计算。  netcoreapp3.1 已计算。 
.NET Standard netstandard2.0 与兼容。  netstandard2.1 已计算。 
.NET Framework net461 已计算。  net462 已计算。  net463 已计算。  net47 已计算。  net471 已计算。  net472 已计算。  net48 已计算。  net481 已计算。 
MonoAndroid monoandroid 已计算。
MonoMac monomac 已计算。
MonoTouch monotouch 已计算。
Tizen tizen40 已计算。 tizen60 已计算。
Xamarin.iOS xamarinios 已计算。
Xamarin.Mac xamarinmac 已计算。
Xamarin.TVOS xamarintvos 已计算。
Xamarin.WatchOS xamarinwatchos 已计算。
兼容的目标框架
包含的目标框架(在包中)
更多关于 目标框架.NET Standard 的信息。
  • .NETStandard 2.0

    • 无依赖。

NuGet 包 (2)

显示依赖于 Sequel 的前 2 个 NuGet 包

下载
LunchPail.Repository

适用于 LunchPail 的 .NET 标准化抽象仓库。

NBean

面向 .Net 的混合 ORM

GitHub 仓库

此包没有用于任何流行的 GitHub 仓库。

版本 下载 最后更新
3.1.4 915 9/16/2022
3.1.3 390 9/16/2022
3.1.2 370 9/16/2022
3.1.1 444 7/31/2021
3.1.0 468 12/4/2020
3.0.2 395 11/30/2020
3.0.1 447 11/15/2020
3.0.0 344 11/14/2020
2.0.0 1,324 10/28/2019
1.1.5 764 3/20/2019
1.1.4 588 3/5/2019
1.1.3 1,065 8/31/2018
1.1.2 759 8/24/2018
1.1.1 748 8/24/2018
1.1.0 731 8/23/2018
1.0.6 751 8/23/2018
1.0.5 2,099 8/21/2018
1.0.4 1,015 7/26/2018
1.0.3 770 7/25/2018
1.0.2 867 5/5/2018
1.0.1 879 5/5/2018
1.0.0 789 5/2/2018