DbSharp是一个在.NET6环境下的DAL(数据访问层)生成工具,它可以帮助开发者快速生成C#代码来与数据库进行交互。这个工具是在10年前发布的,去年决定对其进行增强,从零开始重新设计,去除冗余功能,使其更加易于使用。
DbSharp应用程序可以生成C#代码。可以通过Nuget添加项目引用。现在,可以像下面这样轻松调用存储过程:
var sp = new Usp_Structure();
sp.BigIntColumn = 1;
// 用户定义的表类型参数。TVP(表值参数)
var r = new MyTableType.Record();
r.BigIntColumn = 2;
sp.StructuredColumn.Records.Add(r);
var spResult = await sp.ExecuteNonQueryAsync();
var sp1 = new Usp_SelectMultiTable();
var resultSetList = await sp1.GetResultSetsListAsync();
foreach (var item in resultSetList.ResultSetList)
{
// 执行某些操作...
var text = item.CharColumn;
Console.WriteLine(item.BigIntColumn);
}
生成的类是强类型的,因此可以通过智能感知来选择。
DbSharp应用程序支持表值参数、输出参数、结果集、枚举值等。DbSharp应用程序在.NET6上继续提供以前版本的功能。可以通过本文了解详细信息。
下载DbSharp应用程序。 设置数据库的连接字符串。 生成C#源代码到项目。 从Nuget添加引用。
可以从下载DbSharp应用程序。
启动.exe文件,通过在左侧面板中按下“添加”按钮来生成设置。 通过“设置”按钮添加连接字符串。窗口将打开。 可以添加连接字符串列表。 这些连接字符串将保存到用户文件夹中的文件中。 例如:C:\Users\Higty\HigLabo\DbSharpApplication\ConfigData.xml
选择之前添加的连接字符串,按钮将显示。 按下“加载存储过程”按钮。存储过程列表将被加载。 选择存储过程并按下底部的“生成”按钮。 存储过程参数将被加载。 设置输出文件夹、命名空间、数据库键。按下“生成”按钮。C#源代码将被生成到指定的文件夹。 如果存储过程有结果集,按下“加载结果集”按钮。 结果集将被加载。
为了编译项目,必须添加以下引用:
HigLabo.Core
HigLabo.Data
HigLabo.Data.SqlServer
HigLabo.DbSharp
HigLabo.DbSharp.SqlServer
现在,可以编译项目了。
设置DatabaseFactory类。如果设置数据库键为"HigLabo",将"HigLabo"传递给第一个参数。
StoredProcedure.DatabaseFactory.SetCreateDatabaseMethod(
"HigLabo", () => new SqlServerDatabase("My connection string..."));
现在,可以轻松地使用用户定义的表类型调用存储过程。
var sp = new Usp_Structure();
sp.BigIntColumn = 1;
// 用户定义的表类型参数。TVP(表值参数)
var r = new MyTableType.Record();
r.BigIntColumn = 2;
sp.StructuredColumn.Records.Add(r);
var spResult = await sp.ExecuteNonQueryAsync();
可以获取结果集。
var sp1 = new Usp_SelectMultiTable();
var resultSetList = await sp1.GetResultSetsListAsync();
foreach (var item in resultSetList.ResultSetList)
{
// 执行某些操作...
var text = item.CharColumn;
Console.WriteLine(item.BigIntColumn);
}
可以在下面的链接中看到示例代码: