构建NetCore应用框架之实战篇(五):BitAdminCore框架1.0登录功能设计实现及源码

廉价感情. 提交于 2021-02-14 13:45:03

 

本篇承接上篇内容,如果你不小心点击进来,建议从第一篇开始完整阅读,文章内容继承性连贯性。

构建NetCore应用框架之实战篇系列

 

一、设计原则


1、继承前面框架架构思维,设计以可读性作为首要目标。

2、技术架构上共分四层,分html层、controller层、helper层、db层,另外还有ef。

3、所有业务逻辑均在controller层实现,helper只做一些与业务无关的技术封装。

 

二、模块设计


1、html层:包括login,html,index.html两个页面。

2、controller层:AccountController封装所有与登录权限有关的方法。

3、helper层:LogHelper,SqlHelper,EncryptHelper,SSOClient,VerificationCode,HttpContext等方法。

 

大致分层架构

 

 

三、函数设计


1、重点讲一下SSOClient,封装登录过程相关信息。

2、SSOClient主要函数有IsLogin,Validate,SignIn,SignOut

3、SSOClient主要属性有UserId,User,Department,Roles

把登录过程封装,是为了提升扩展性,把登录抽象为一般较验、用户较验、登录三个环节,可以轻易接入外部登录。

当需要使用第三方登录时,只需要重写Validate即可。

 

4、AccountController包括以下函数:VerifyCode,Login

5、其它方法为辅助方法,可以查看代码调用链即可。

 

功能设计太复杂,文字介绍不清楚,还是直接看代码吧。一个登录功能看起来简简单单,实际上把该用的基本上都用上了。

 

四、源代码


本篇源码已经上传到GitHub上,本章内容在v1001分支上,Master不解释。进入源码

1、从Git上拉取分支v1001代码.

2、本地新建数据库

3、执行建表和数据脚本

4、运行

 

 

 

到此为止,框架的雏形已经基本形成,接下来会用两篇的内容进行总结。其中一篇总结整体架构,一篇重点讲源码结构。

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!