using XFEExtension.NetCore.ServerInteractive.Models.UserModels;
using XFEExtension.NetCore.ServerInteractive.Utilities.DataTable;
namespace XFEExtension.NetCore.ServerInteractive.Options;
///
/// XFE服务器核心服务选项
///
public class XFEStandardServerCoreOptions where T : class
{
///
/// 使用服务器入口点校验服务(默认为true,启用服务器入口点校验服务,服务器入口点校验服务用于校验请求是否来自合法的入口点)
///
public bool UseEntryPointVerifyService { get; set; } = true;
///
/// 使用日期统计服务(默认为true,启用日期统计服务,日期统计服务用于统计每天的请求数量等信息,可以用于监控服务器的使用情况)
///
public bool UseDailyCounterService { get; set; } = true;
///
/// 使用XFE异常处理服务(默认为true,启用XFE异常处理服务,XFE异常处理服务用于处理服务器核心服务中的异常,并将异常信息返回给客户端)
///
public bool UseXFEErrorProcessService { get; set; } = true;
///
/// 使用连接检查服务(默认为true,启用连接检查服务,连接检查服务用于检查服务器与客户端之间的连接是否正常,可以用于监控服务器的连接状态)
///
public bool UseConnectService { get; set; } = true;
///
/// 获取用户函数
///
public Func>? GetUserFunction { get; set; }
///
/// 获取加密用户登录模型函数
///
public Func>? GetEncryptedUserLoginModelFunction { get; set; }
///
/// 添加加密用户登录模型函数
///
public Action? AddEncryptedUserLoginModelFunction { get; set; }
///
/// 删除加密用户登录模型函数
///
public Action? RemoveEncryptedUserLoginModelFunction { get; set; }
///
/// 获取登录保持天数函数
///
public Func GetLoginKeepDays { get; set; } = () => 7;
///
/// 登录结果转换函数(将用户模型转换为要返回给客户端的登录结果模型)
///
public Func