Skip to content

Latest commit

 

History

History
43 lines (43 loc) · 1.57 KB

02 Selecting Scalar Values With Dapper.md

File metadata and controls

43 lines (43 loc) · 1.57 KB

使用Dapper查看标量值

Dapper提供了两种查看标量值(单个)的方法以及它们的异步方法。

方法 描述
ExecuteScalar 返回动态(dynamic)类型
ExecuteScalar<T> 返回T类型参数指定的类型的实例
ExecuteScalarAsync 异步返回动态(dynamic)类型
ExecuteScalarAsync<T> 异步返回T类型参数指定的类型的实例

ExecuteScalar 方法

using (var connection = new SQLiteConnection(connString))
{
    var sql = "select count(*) from products";
    var count = connection.ExecuteScalar(sql);
    Console.WriteLine($"Total products: {count}");
}

如果要对返回的值执行任何操作,则需要将其 强制转换 或 转换 为期望的类型。 或者,使用带有通用参数的ExecuteScalar版本,并显式指定返回类型:

using (var connection = new SQLiteConnection(connString))
{
    var sql = "select count(*) from products";
    var count = connection.ExecuteScalar<int>(sql);
    Console.WriteLine($"Total products: {count}");
}

异步操作

using (var connection = new SQLiteConnection(connString))
{
    var sql = "select count(*) from products";
    var count = await connection.ExecuteScalarAsync(sql);
    Console.WriteLine($"Total products: {count}");
}
using (var connection = new SQLiteConnection(connString))
{
    var sql = "select count(*) from products";
    var count = await connection.ExecuteScalarAsync<int>(sql);
    Console.WriteLine($"Total products: {count}");
}