333
This commit is contained in:
76
MyCode.Project.Infrastructure/Trees/ITreeContext.cs
Normal file
76
MyCode.Project.Infrastructure/Trees/ITreeContext.cs
Normal file
@@ -0,0 +1,76 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MyCode.Project.Infrastructure.Trees
|
||||
{
|
||||
/// <summary>
|
||||
/// 树节点上下文
|
||||
/// </summary>
|
||||
/// <typeparam name="T">实体类型</typeparam>
|
||||
/// <typeparam name="TOuter">输出实体类型</typeparam>
|
||||
public interface ITreeContext<T, TOuter>
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据源
|
||||
/// </summary>
|
||||
List<TreeNode<TOuter>> Data { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前节点
|
||||
/// </summary>
|
||||
TreeNode<TOuter> Current { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分隔符
|
||||
/// </summary>
|
||||
string Separator { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 设置树节点列表数据源
|
||||
/// </summary>
|
||||
/// <typeparam name="TKey">键类型</typeparam>
|
||||
/// <param name="collection">数据源</param>
|
||||
/// <param name="textSelector">显示文本选择器</param>
|
||||
/// <param name="idSelector">ID选择器</param>
|
||||
/// <param name="parentIdSelector">父ID选择器</param>
|
||||
/// <returns></returns>
|
||||
ITreeContext<T, TOuter> SetItems<TKey>(List<T> collection, Func<T, string> textSelector,
|
||||
Func<T, TKey> idSelector, Func<T, TKey> parentIdSelector);
|
||||
|
||||
/// <summary>
|
||||
/// 设置树节点列表数据源
|
||||
/// </summary>
|
||||
/// <typeparam name="TKey">键类型</typeparam>
|
||||
/// <param name="collection">数据源</param>
|
||||
/// <param name="textSelector">显示文本选择器</param>
|
||||
/// <param name="idSelector">ID选择器</param>
|
||||
/// <param name="parentIdSelector">父ID选择器</param>
|
||||
/// <param name="convertSelector">转换选择器</param>
|
||||
/// <returns></returns>
|
||||
ITreeContext<T, TOuter> SetItems<TKey>(List<T> collection, Func<T, string> textSelector,
|
||||
Func<T, TKey> idSelector, Func<T, TKey> parentIdSelector, Func<T, TOuter> convertSelector);
|
||||
|
||||
/// <summary>
|
||||
/// 获取当前树节点
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
TreeNode<TOuter> GetTreeNode();
|
||||
|
||||
/// <summary>
|
||||
/// 获取树节点
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
List<TreeNode<TOuter>> GetTrees();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 树节点上下文
|
||||
/// </summary>
|
||||
/// <typeparam name="T">实体类型</typeparam>
|
||||
public interface ITreeContext<T> : ITreeContext<T, T>
|
||||
{
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user