XFEExtension.NetCore.ServerInteractive
[DLL] Server interaction extension, including user identity verification and querying in conjunction with AutoConfig
关注
0
Fork
0
Star
0
返回提交历史
Modified
README.md
+32
-31
Modified
XFEExtension.NetCore.ServerInteractive.TServer/Program.cs
+1
-0
Modified
XFEExtension.NetCore.ServerInteractive/Utilities/XFEServerBuilderExtensions.cs
+1
-1
Modified
XFEExtension.NetCore.ServerInteractive/Utilities/XFEServerCoreBuilderExtensions.cs
+5
-3
Modified
XFEExtension.NetCore.ServerInteractive/XFEExtension.NetCore.ServerInteractive.csproj
+2
-2
XFEstudio/XFEExtension.NetCore.ServerInteractive
修复用户登录天数没有传参的bug
cfba53f
代码差异
5 个文件
+41
-37
@@ -1,58 +1,59 @@
1
1
# XFEExtension.NetCore.ServerInteractive
2
2
3
## ����
3
## 描述
4
4
5
ServerInteractive��һ��C#��DLL�⣬�为����XFEExtension.NetCore�ṩ��CyberComm����ܹ�����ʹ���߿��Կ��ٹ����������Ϳͻ���������
5
ServerInteractive是一个C#的DLL库,其负责搭建以XFEExtension.NetCore提供的CyberComm网络架构,让使用者可以快速构建服务器和客户端网络框架
6
6
7
# ʾ����ʹ��ǰ�ǵý�����Ӧ�����ã�
7
# 示例(使用前记得进行相应的引用)
8
8
9
9
---
10
10
11
## ���������������
11
## 搭建服务器端网络框架
12
12
13
#### ʹ��XFE������ܹ�
13
#### 使用XFE标准网络架构
14
14
15
15
```csharp
16
var server = XFEServerBuilder.CreateBuilder() // ����������������
17
.UseXFEServer() // ʹ��XFE�������ܹ�
18
.AddCoreServer( // ���Ӻ��ķ�����
19
XFEServerCoreBuilder.CreateBuilder() // �����������������
20
.UseXFEStandardServerCore( // ʹ��XFE������������
21
static () => UserProfile.UserTable, // ��ȡ�û����ķ���
22
static () => UserProfile.EncryptedUserLoginModelTable, // ��ȡ�û�����ģ�͵ķ���
23
UserProfile.EncryptedUserLoginModelTable.Add, // �����û�����ģ�͵ķ���
24
static user => UserProfile.EncryptedUserLoginModelTable.Remove(user), // �Ƴ��û�����ģ�͵ķ���
25
XFEDataTableManagerBuilder.CreateBuilder() // ����DataTable������������
26
.AddTable<Person, DataProfile>("����", (int)UserRole.ҵ��Ա, (int)UserRole.����, (int)UserRole.ҵ��Ա, (int)UserRole.ҵ��Ա) // ������Ϊ����ı���Person���ͣ�AutoConfigΪDataProfile�����Ӹ��Ļ�ȡȨ��Ϊҵ��Ա���Ƴ�Ȩ��Ϊ����
27
.AddTable<Order, DataProfile>("����", (int)UserRole.ҵ��Ա, (int)UserRole.����, (int)UserRole.ҵ��Ա, (int)UserRole.ҵ��Ա) // ������Ϊ�����ı���Order���ͣ�AutoConfigΪDataProfile�����Ӹ��Ļ�ȡȨ��Ϊҵ��Ա���Ƴ�Ȩ��Ϊ����
28
.AddTable<User, UserProfile>("�û�", (int)UserRole.����, (int)UserRole.����, (int)UserRole.����, (int)UserRole.ҵ��Ա)) // ������Ϊ�û��ı���User���ͣ�AutoConfigΪUserProfile����ȡȨ��Ϊҵ��Ա�������Ƴ�����Ȩ��Ϊ����
29
.Build()) // �����������
30
.Build(); // ����������
31
await server.Start(); // ��������
16
var server = XFEServerBuilder.CreateBuilder() // 创建服务器构建器
17
.UseXFEServer() // 使用XFE服务器架构
18
.AddCoreServer( // 添加核心服务器
19
XFEServerCoreBuilder.CreateBuilder() // 创建核心服务器构建器
20
.UseXFEStandardServerCore( // 使用XFE标准服务器核心
21
static () => UserProfile.UserTable, // 获取用户表的方法
22
static () => UserProfile.EncryptedUserLoginModelTable, // 获取用户加密模型的方法
23
UserProfile.EncryptedUserLoginModelTable.Add, // 添加用户加密模型的方法
24
static user => UserProfile.EncryptedUserLoginModelTable.Remove(user), // 移除用户加密模型的方法
25
static () => 7, // 获取登录维持天数方法
26
XFEDataTableManagerBuilder.CreateBuilder() // 创建DataTable管理器构建器
27
.AddTable<Person, DataProfile>("人物", (int)UserRole.业务员, (int)UserRole.经理, (int)UserRole.业务员, (int)UserRole.业务员) // 添加名为人物的表格,Person类型,AutoConfig为DataProfile。添加更改获取权限为业务员,移除权限为经理
28
.AddTable<Order, DataProfile>("订单", (int)UserRole.业务员, (int)UserRole.经理, (int)UserRole.业务员, (int)UserRole.业务员) // 添加名为订单的表格,Order类型,AutoConfig为DataProfile。添加更改获取权限为业务员,移除权限为经理
29
.AddTable<User, UserProfile>("用户", (int)UserRole.经理, (int)UserRole.经理, (int)UserRole.经理, (int)UserRole.业务员)) // 添加名为用户的表格,User类型,AutoConfig为UserProfile。获取权限为业务员,添加移除更改权限为经理
30
.Build()) // 构建核心服务器
31
.Build(); // 构建服务器
32
await server.Start(); // 启动服务
32
33
```
33
34
34
#### �����Զ������
35
#### 添加自定义服务
35
36
36
37
```csharp
37
38
var server = XFEServerBuilder.CreateBuilder()
38
.AddInitializer<MyInitilizerService>() // �Զ����ʼ������
39
.AddService<MyService>() // �Զ������
40
.AddAsyncService<MyAsyncService>() // �Զ����첽����
39
.AddInitializer<MyInitilizerService>() // 自定义初始化服务
40
.AddService<MyService>() // 自定义服务
41
.AddAsyncService<MyAsyncService>() // 自定义异步服务
41
42
.Build();
42
43
```
43
44
44
45
---
45
46
46
## ��ͻ���������
47
## 搭建客户端请求器
47
48
48
#### ʹ��XFE��������
49
#### 使用XFE标准请求器
49
50
50
51
```csharp
51
var xFEClientRequester = XFEClientRequesterBuilder.CreateBuilder("http://localhost:8080/", string.Empty, DeviceHelper.GetUniqueHardwareId()) // ������IP��ַ���û�Session�Լ�Ӳ������
52
.UseXFEStandardRequest() // ʹ��XFE��������
53
.Build(); // �����ͻ���������
52
var xFEClientRequester = XFEClientRequesterBuilder.CreateBuilder("http://localhost:8080/", string.Empty, DeviceHelper.GetUniqueHardwareId()) // 服务器IP地址,用户Session以及硬件编码
53
.UseXFEStandardRequest() // 使用XFE标准请求器
54
.Build(); // 构建客户端请求器
54
55
55
var result = await xFEClientRequester.Request<(string session, DateTime expireDate)>("login", account, password); // ����login����
56
var result = await xFEClientRequester.Request<(string session, DateTime expireDate)>("login", account, password); // 调用login方法
56
57
if (result.StatusCode == System.Net.HttpStatusCode.OK)
57
58
{
58
59
Console.WriteLine(result.Result.session);
@@ -15,6 +15,7 @@ var server = XFEServerBuilder.CreateBuilder() //创建服务器构建器
15
15
static () => UserProfile.EncryptedUserLoginModelTable, //获取用户加密模型的方法
16
16
UserProfile.EncryptedUserLoginModelTable.Add, //添加用户加密模型的方法
17
17
static user => UserProfile.EncryptedUserLoginModelTable.Remove(user), //移除用户加密模型的方法
18
static () => 7, // 获取登录维持天数方法
18
19
XFEDataTableManagerBuilder.CreateBuilder() //创建DataTable管理器构建器
19
20
.AddTable<Person, DataProfile>("人物", (int)UserRole.业务员, (int)UserRole.经理, (int)UserRole.业务员, (int)UserRole.业务员) //添加名为人物的表格,Person类型,AutoConfig为DataProfile。添加更改获取权限为业务员,移除权限为经理
20
21
.AddTable<Order, DataProfile>("订单", (int)UserRole.业务员, (int)UserRole.经理, (int)UserRole.业务员, (int)UserRole.业务员) //添加名为订单的表格,Order类型,AutoConfig为DataProfile。添加更改获取权限为业务员,移除权限为经理
@@ -9,7 +9,7 @@ namespace XFEExtension.NetCore.ServerInteractive.Utilities;
9
9
public static class XFEServerBuilderExtensions
10
10
{
11
11
/// <summary>
12
/// 使用XFE日志记录
12
/// 使用XFE标准服务器
13
13
/// </summary>
14
14
/// <param name="xFEServerBuilder"></param>
15
15
/// <returns></returns>
@@ -28,11 +28,13 @@ public static class XFEServerCoreBuilderExtensions
28
28
/// <param name="getEncryptedUserLoginModelFunction"></param>
29
29
/// <param name="addEncryptedUserLoginModelFunction"></param>
30
30
/// <param name="removeEncryptedUserLoginModelFunction"></param>
31
/// <param name="getLoginKeepDays"></param>
31
32
/// <returns></returns>
32
public static XFEServerCoreBuilder AddUserParameterBase(this XFEServerCoreBuilder xFEServerCoreBuilder, Func<IEnumerable<User>> getUserFunction, Func<IEnumerable<EncryptedUserLoginModel>> getEncryptedUserLoginModelFunction, Action<EncryptedUserLoginModel> addEncryptedUserLoginModelFunction, Action<EncryptedUserLoginModel> removeEncryptedUserLoginModelFunction) => xFEServerCoreBuilder.AddParameter("GetUserFunction", getUserFunction)
33
public static XFEServerCoreBuilder AddUserParameterBase(this XFEServerCoreBuilder xFEServerCoreBuilder, Func<IEnumerable<User>> getUserFunction, Func<IEnumerable<EncryptedUserLoginModel>> getEncryptedUserLoginModelFunction, Action<EncryptedUserLoginModel> addEncryptedUserLoginModelFunction, Action<EncryptedUserLoginModel> removeEncryptedUserLoginModelFunction, Func<int> getLoginKeepDays) => xFEServerCoreBuilder.AddParameter("GetUserFunction", getUserFunction)
33
34
.AddParameter("GetEncryptedUserLoginModelFunction", getEncryptedUserLoginModelFunction)
34
35
.AddParameter("AddEncryptedUserLoginModelFunction", addEncryptedUserLoginModelFunction)
35
.AddParameter("RemoveEncryptedUserLoginModelFunction", removeEncryptedUserLoginModelFunction);
36
.AddParameter("RemoveEncryptedUserLoginModelFunction", removeEncryptedUserLoginModelFunction)
37
.AddParameter("GetLoginKeepDays", getLoginKeepDays);
36
38
37
39
/// <summary>
38
40
/// 使用XFE标准登录服务
@@ -88,7 +90,7 @@ public static class XFEServerCoreBuilderExtensions
88
90
/// <param name="removeEncryptedUserLoginModelFunction"></param>
89
91
/// <param name="xFEDataTableManagerBuilder"></param>
90
92
/// <returns></returns>
91
public static XFEServerCoreBuilder UseXFEStandardServerCore(this XFEServerCoreBuilder xFEServerCoreBuilder, Func<IEnumerable<User>> getUserFunction, Func<IEnumerable<EncryptedUserLoginModel>> getEncryptedUserLoginModelFunction, Action<EncryptedUserLoginModel> addEncryptedUserLoginModelFunction, Action<EncryptedUserLoginModel> removeEncryptedUserLoginModelFunction, XFEDataTableManagerBuilder xFEDataTableManagerBuilder) => xFEServerCoreBuilder.AddUserParameterBase(getUserFunction, getEncryptedUserLoginModelFunction, addEncryptedUserLoginModelFunction, removeEncryptedUserLoginModelFunction)
93
public static XFEServerCoreBuilder UseXFEStandardServerCore(this XFEServerCoreBuilder xFEServerCoreBuilder, Func<IEnumerable<User>> getUserFunction, Func<IEnumerable<EncryptedUserLoginModel>> getEncryptedUserLoginModelFunction, Action<EncryptedUserLoginModel> addEncryptedUserLoginModelFunction, Action<EncryptedUserLoginModel> removeEncryptedUserLoginModelFunction, Func<int> getLoginKeepDays, XFEDataTableManagerBuilder xFEDataTableManagerBuilder) => xFEServerCoreBuilder.AddUserParameterBase(getUserFunction, getEncryptedUserLoginModelFunction, addEncryptedUserLoginModelFunction, removeEncryptedUserLoginModelFunction, getLoginKeepDays)
92
94
.AddDataTableManager(xFEDataTableManagerBuilder, getUserFunction, getEncryptedUserLoginModelFunction)
93
95
.AddEntryPotinVerify()
94
96
.AddDailyCounterService()
@@ -5,7 +5,7 @@
5
5
<ImplicitUsings>enable</ImplicitUsings>
6
6
<Nullable>enable</Nullable>
7
7
<GenerateDocumentationFile>True</GenerateDocumentationFile>
8
<Version>1.0.0</Version>
8
<Version>1.0.1</Version>
9
9
<Title>XFEExtension.NetCore.ServerInteractive</Title>
10
10
<RepositoryUrl>https://github.com/XFEstudio/XFEExtension.NetCore.ServerInteractive</RepositoryUrl>
11
11
<AnalysisLevel>latest</AnalysisLevel>
@@ -21,7 +21,7 @@
21
21
<PackageReleaseNotes>
22
22
## 调整
23
23
24
无
24
修复用户登录天数没有传参的bug
25
25
26
26
## 新增
27
27