Bool 类型 return 规则

Bool type return rule

我使用 dapper ORM.So 我使用两个规则 Query<T>QuerySingle<T>。查询 return 列表 & QuerySingle return 单个对象。

所以,我想要一个 bool 类型。 (其实我想得到一个bool is true or false的记录)

我的Query<T>:

public IEnumerable<T> Query<T>(string SqlString) where T : class
{
    return this.conn.Query<T>(SqlString);
}

那么bool类型怎么写return?

So, I want to get a bool type. (Actually I wanted to get a bool is true or false record)

你可以这样写一个方法:

public bool GetBooleanValue(string sql)
{
    return the_connection.Query<bool>(sql).FirstOrDefault();
}

FirstOrDefault 的美妙之处在于,当您查询 returns 一个空行时,Dapper 会给您 false。只要您的查询 returns 一个可以由您的数据提供程序转换为布尔值的值,建议的代码就会起作用。如果是 SQL 服务器,你会得到:

  • GetBooleanValue("select 1");
  • 为真
  • GetBooleanValue("select 0");
  • 为假

其中 10 是布尔类型的table 列中的值。

如果你想测试是否存在某些东西或一组值是否存在 GetBooleanValue("select COUNT(*) from the_table where the_column='some_filter'"),你甚至可以使用代码。