mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-06-19 12:28:15 +08:00
拆分 FreeSql 按需引用
This commit is contained in:
@ -108,13 +108,6 @@ namespace FreeSql {
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
TSelect Master();
|
||||
/// <summary>
|
||||
/// 缓存查询结果
|
||||
/// </summary>
|
||||
/// <param name="seconds">缓存秒数</param>
|
||||
/// <param name="key">缓存key</param>
|
||||
/// <returns></returns>
|
||||
TSelect Caching(int seconds, string key = null);
|
||||
|
||||
/// <summary>
|
||||
/// 左联查询,使用导航属性自动生成SQL
|
||||
|
@ -46,11 +46,6 @@ namespace FreeSql {
|
||||
/// 当前线程的事务
|
||||
/// </summary>
|
||||
DbTransaction TransactionCurrentThread { get; }
|
||||
/// <summary>
|
||||
/// 事务完成前预删除缓存
|
||||
/// </summary>
|
||||
/// <param name="keys"></param>
|
||||
void TransactionPreRemoveCache(params string[] keys);
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
|
@ -1,108 +0,0 @@
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FreeSql {
|
||||
public interface ICache {
|
||||
|
||||
/// <summary>
|
||||
/// 缓存数据时序列化方法,若无设置则默认使用 Json.net
|
||||
/// </summary>
|
||||
Func<object, string> Serialize { get; set; }
|
||||
/// <summary>
|
||||
/// 获取缓存数据时反序列化方法,若无设置则默认使用 Json.net
|
||||
/// </summary>
|
||||
Func<string, Type, object> Deserialize { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 缓存可序列化数据
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
/// <param name="key">缓存键</param>
|
||||
/// <param name="data">可序列化数据</param>
|
||||
/// <param name="timeoutSeconds">缓存秒数,<=0时永久缓存</param>
|
||||
void Set<T>(string key, T data, int timeoutSeconds = 0);
|
||||
/// <summary>
|
||||
/// 循环或批量获取缓存数据
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
/// <param name="key"></param>
|
||||
/// <returns></returns>
|
||||
T Get<T>(string key);
|
||||
/// <summary>
|
||||
/// 循环或批量获取缓存数据
|
||||
/// </summary>
|
||||
/// <param name="key"></param>
|
||||
/// <returns></returns>
|
||||
string Get(string key);
|
||||
/// <summary>
|
||||
/// 循环或批量删除缓存键
|
||||
/// </summary>
|
||||
/// <param name="keys">缓存键[数组]</param>
|
||||
void Remove(params string[] keys);
|
||||
/// <summary>
|
||||
/// 缓存壳
|
||||
/// </summary>
|
||||
/// <typeparam name="T">缓存类型</typeparam>
|
||||
/// <param name="key">缓存键</param>
|
||||
/// <param name="timeoutSeconds">缓存秒数</param>
|
||||
/// <param name="getData">获取源数据的函数</param>
|
||||
/// <returns></returns>
|
||||
T Shell<T>(string key, int timeoutSeconds, Func<T> getData);
|
||||
/// <summary>
|
||||
/// 缓存壳(哈希表)
|
||||
/// </summary>
|
||||
/// <typeparam name="T">缓存类型</typeparam>
|
||||
/// <param name="key">缓存键</param>
|
||||
/// <param name="field">字段</param>
|
||||
/// <param name="timeoutSeconds">缓存秒数</param>
|
||||
/// <param name="getData">获取源数据的函数</param>
|
||||
/// <returns></returns>
|
||||
T Shell<T>(string key, string field, int timeoutSeconds, Func<T> getData);
|
||||
|
||||
/// <summary>
|
||||
/// 缓存可序列化数据
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
/// <param name="key">缓存键</param>
|
||||
/// <param name="data">可序列化数据</param>
|
||||
/// <param name="timeoutSeconds">缓存秒数,<=0时永久缓存</param>
|
||||
Task SetAsync<T>(string key, T data, int timeoutSeconds = 0);
|
||||
/// <summary>
|
||||
/// 循环或批量获取缓存数据
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
/// <param name="key"></param>
|
||||
/// <returns></returns>
|
||||
Task<T> GetAsync<T>(string key);
|
||||
/// <summary>
|
||||
/// 循环或批量获取缓存数据
|
||||
/// </summary>
|
||||
/// <param name="key"></param>
|
||||
/// <returns></returns>
|
||||
Task<string> GetAsync(string key);
|
||||
/// <summary>
|
||||
/// 循环或批量删除缓存键
|
||||
/// </summary>
|
||||
/// <param name="keys">缓存键[数组]</param>
|
||||
Task RemoveAsync(params string[] keys);
|
||||
/// <summary>
|
||||
/// 缓存壳
|
||||
/// </summary>
|
||||
/// <typeparam name="T">缓存类型</typeparam>
|
||||
/// <param name="key">缓存键</param>
|
||||
/// <param name="timeoutSeconds">缓存秒数</param>
|
||||
/// <param name="getDataAsync">获取源数据的函数</param>
|
||||
/// <returns></returns>
|
||||
Task<T> ShellAsync<T>(string key, int timeoutSeconds, Func<Task<T>> getDataAsync);
|
||||
/// <summary>
|
||||
/// 缓存壳(哈希表)
|
||||
/// </summary>
|
||||
/// <typeparam name="T">缓存类型</typeparam>
|
||||
/// <param name="key">缓存键</param>
|
||||
/// <param name="field">字段</param>
|
||||
/// <param name="timeoutSeconds">缓存秒数</param>
|
||||
/// <param name="getDataAsync">获取源数据的函数</param>
|
||||
/// <returns></returns>
|
||||
Task<T> ShellAsync<T>(string key, string field, int timeoutSeconds, Func<Task<T>> getDataAsync);
|
||||
}
|
||||
}
|
@ -87,10 +87,6 @@ public interface IFreeSql : IDisposable {
|
||||
/// <param name="timeout">超时,未执行完将自动提交</param>
|
||||
void Transaction(Action handler, TimeSpan timeout);
|
||||
|
||||
/// <summary>
|
||||
/// 缓存
|
||||
/// </summary>
|
||||
ICache Cache { get; }
|
||||
/// <summary>
|
||||
/// 数据库访问对象
|
||||
/// </summary>
|
||||
|
Reference in New Issue
Block a user