44 lines
1.1 KiB
C#
44 lines
1.1 KiB
C#
using System;
|
|
|
|
namespace LFlow.Base.Interfaces;
|
|
|
|
/// <summary>
|
|
/// 通用的仓库对象接口
|
|
/// </summary>
|
|
/// <typeparam name="T">数据模型</typeparam>
|
|
/// <typeparam name="K">主键</typeparam>
|
|
public interface IRepo<T, K> where T : IDataModel
|
|
{
|
|
/// <summary>
|
|
/// 获取单个对象
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
T Get(K id);
|
|
/// <summary>
|
|
/// 删除单个对象
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
T Delete(K id);
|
|
/// <summary>
|
|
/// 保存与更新
|
|
/// </summary>
|
|
/// <param name="entity"></param>
|
|
/// <returns></returns>
|
|
T SaveOrUpdate(T entity, bool isUpdate);
|
|
/// <summary>
|
|
/// 根据条件搜索对象列表
|
|
/// </summary>
|
|
/// <param name="whereObj"></param>
|
|
/// <returns></returns>
|
|
List<T> Search(T whereObj);
|
|
/// <summary>
|
|
/// 根据条件搜索主键列表
|
|
/// </summary>
|
|
/// <param name="whereObj"></param>
|
|
/// <returns></returns>
|
|
List<K> WhereSearchId(T whereObj);
|
|
|
|
}
|