首页 文章详情

Dotnet9站长:使用WTM几天后的记录总结!

dotNET全栈开发 | 977 2021-01-11 20:20 0 0 0
UniSMS (合一短信)

用了一段时间WTM框架,写写遇到的问题和解决方案吧。

1、自定义用户,新增用户登录失败

其实可以看WTM自定义用户说明,在框架用户类基础上扩展字段,copy的文档上代码:

using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using WalkingTec.Mvvm.Core;
namespace YourNameSpace.Models
{
    [Table("FrameworkUsers")]
    public class MyUser : FrameworkUserBase
    {
        [Display(Name = "附加信息1")]
        public string Extra1 { getset; }
        [Display(Name = "附加信息2")]
        public string Extra2 { getset; }
    }
}

新增用户登录失败,上面的文档链接也有说明,直接copy过来:

唯一需要修改一下的就是框架的登陆是MD5验证的,所以当你添加MyUser之前,记得加上一句Entity.Password = Utils.GetMD5String(Entity.Password);把密码MD5加密一下

站长没有仔细看文档,只记得有这段代码,还在DotNet Core WTM 交流群【694148336】里问了,谢谢群友的解答。

注:扩展用户,只需要在后端新增用户的Add接口上加上上面那句代码,用于将密码经过MD5加密后存储,在前端登录时,后端会使用MD5加密后的密码与数据库对比

2、表格查询条件中的时间选择,能不能精确到秒?

根据实体类生成前后端代码时,选择DateTime类型的属性作为搜索条件,默认选择效果如下:

WTM默认时间范围选择

有些业务,比如日志查询,可能一分钟产生几百上千条,我要精确查找,效果如下:

精确范围查找

选择日期后【年-月-日】,可以点击弹出控件的右下角【选择时间】,就可以选择时间了【时:分:秒】,而实现这个效果,在WTM框架上可以很方便实现:

后端只需要在查询时间的属性上添加特性【[DataType(DataType.DateTime)]

后端修改

前端在时间范围控件上添加showtime属性即可:

前端修改

这里也得感谢万能的DotNet Core WTM 交流群群友解答【694148336】

3、控制器Action拦截日志,能只记录异常日志吗?

生成框架代码时,未勾选只记录异常日志,那么框架会将Action的每次调用都记录入库:

Action记录日志

实际项目上,没必要记录这么详细,只记录Information日志或者异常日志即可,记太多不方便查找,也占数据库空间,怎么修改呢?原文档中建议修改appsettings.jsonLogExceptionOnly属性即可,实际操作时不生效的。

LogExceptionOnly:当启用日志时,是否只记录异常

这个时候,站长又厚着脸皮在DotNet Core WTM 交流群【694148336】**求解,谢谢开源框架WTM作者,也是群主刘亮大大解惑。

框架升级很及时,可能文档还未更新,现在实现上面的需求只需要像下面截图中修改即可:

修改WTM一节

使用了WTM框架,大大提高了站长的项目开发效率,不只是免去了重造权限管理模块的轮子,而且开发一个新功能,只需要在Model中添加一个实体类,然后使用框架的代码生成器,就一键生成前后端代码了,实在是方便之极。

站长在不断实战摸索几天后,实在是因为WTM太优秀,上面记录的三点大部分还是因为个人技术不精的缘故,实在是找不出什么缺点了。

最后

站长工作中前端主要还是以React为主,开源项目lqclass.com前端计划采用Vue,生成框架代码时,只需要如下修改即可:

WTM Vue前后分离

Vue前端和React差不多,风格有点小差别:

WTM Vue前端

换前端问题不大,毕竟站长19年做b/s时,先接触的vue,新公司才采用的React,没啥大问题😎。

回复 【关闭】广
回复 【实战】获取20套实战源码
回复 【被删】
回复 【访客】访
回复 【小程序】学获取15套【入门+实战+赚钱】小程序源码
回复 【python】学微获取全套0基础Python知识手册
回复 【2019】获取2019 .NET 开发者峰会资料PPT
回复 【加群】加入dotnet微信交流群

副业刚需,没有人能拒绝这个网站!


终于GitHub App 已支持简体中文!

good-icon 0
favorite-icon 0
收藏
回复数量: 0
    暂无评论~~
    Ctrl+Enter