數據查詢
Datory 使用 Repository 數據倉庫的 GetAsync 方法獲取單條數據,使用 GetAllAsync 方法獲取列表數據,使用 ExistsAsync 判斷數據是否存在。
獲取單條數據
Repository 數據倉庫的 GetAsync 方法用于獲取單條數據,傳參可以爲數字、字符串或者 Query 對(duì)象,分别代表通過(guò) Id 字段、通過(guò) Guid 字段、通過(guò) Query 對(duì)象獲取單條數據。
var repository = new Repository<DataModel>(settingsManager.Database, settingsManager.Redis);
var dataModel = await repository.GetAsync(10);
2
以上代碼將(jiāng)獲取 Id 爲 10 的單條數據。
var repository = new Repository<DataModel>(settingsManager.Database, settingsManager.Redis);
var dataModel = await repository.GetAsync(Q
.Where("SiteId", 1)
.OrderByDesc("Taxis")
);
2
3
4
5
以上代碼構造 Query 對(duì)象,設置查詢條件以及排序規則并返回符合條件的第一條數據。
GetAsync 方法也可以不傳參數,系統將(jiāng)返回第一條數據。
如果未找到适合條件的數據,GetAsync 方法將(jiāng)返回 null 空對(duì)象。
獲取列表數據
Repository 數據倉庫的 GetAllAsync 方法用于獲取數據列表,可以通過(guò) Query 對(duì)象參數設置查詢條件,如果不傳參將(jiāng)返回全部數據列表。
var repository = new Repository<DataModel>(settingsManager.Database, settingsManager.Redis);
var list = await _repository.GetAllAsync(Q
.Where("SiteId", 1)
.WhereNotNull("TagName")
.OrderByDesc("UseNum")
);
2
3
4
5
6
以上代碼構造 Query 對(duì)象,設置查詢條件以及排序規則并返回符合條件數據列表,返回的數據列表將(jiāng)按照 Query 對(duì)象中設置的排序規則排序。
var repository = new Repository<DataModel>(settingsManager.Database, settingsManager.Redis);
var list = await _repository.GetAllAsync();
2
以上代碼將(jiāng)返回所有數據的列表
判斷數據是否存在
Repository 數據倉庫的 ExistsAsync 方法用于判斷數據是否存在,傳參可以爲數字、字符串或者 Query 對(duì)象,分别代表通過(guò) Id 字段、通過(guò) Guid 字段、通過(guò) Query 對(duì)象查詢數據是否存在。
ExistsAsync 方法也可以不傳參數,用于判斷表中是否存在數據。
var repository = new Repository<DataModel>(settingsManager.Database, settingsManager.Redis);
var exists = await _repository.ExistsAsync("Title", "名稱");
2
以上代碼構造 Query 對(duì)象,設置查詢條件,如果存在返回 True,否則返回 False。