【Dotnet9-02】使用WTM几天后的记录总结-lqclass.com

用了一段时间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 { get; set; }
        [Display(Name = "附加信息2")]
        public string Extra2 { get; set; }
    }
}

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

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

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

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

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

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

WTM默认时间范围选择
WTM默认时间范围选择

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

精确范围查找
精确范围查找

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

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

后端修改
后端修改

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

前端修改
前端修改

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

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

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

Action记录日志
Action记录日志

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

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

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

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

修改WTM一节
修改WTM一节

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

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

最后

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

WTM Vue前后分离
WTM Vue前后分离

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

WTM Vue前端
WTM Vue前端

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


一些推荐

  1. 【Blazor 开源控件库】点击浏览
  2. 【B/S 开源项目】点击浏览
  3. 【WPF 开源控件库】点击浏览
  4. 【WPF 开源项目】点击浏览
  5. 【Xamarin 开源项目】点击浏览
  6. 【Winform 开源控件库】点击浏览
  7. 【Winform 开源项目】点击浏览
  8. 【Qt 开源控件库】点击浏览
  9. 【Qt 开源项目】点击浏览
  10. 【更多分享】点击浏览

资源分享

  • 回复数字【01】:获取DotNet技术资料
  • 回复数字【02】:获取Java技术资料
  • 回复数字【03】:获取Android技术资料
  • 回复数字【04】:获取C++技术资料
  • 回复数字【05】:获取Qt技术资料
  • 回复数字【06】:获取React资源
  • 添加号主微信号【dotnet9】:备注【入群】加入与大佬们的技术交流
  • 添加QQ群【771992300】:备注【Dotnet9】加入技术交流,无人数上限、有资源共享

时间如流水,只能流去不流回。

  • 公众号:Dotnet9
  • 号主微信号:dotnet9
  • 仓库地址:lqclass.com
  • 编辑:沙漠之尽头的狼
  • 日期:2020-12-12
微信公众号:Dotnet9
微信公众号:Dotnet9

除非注明,文章均由 Dotnet9 整理发布,欢迎转载。

转载请注明:
作者:Dotnet9
链接:https://dotnet9.com/16847.html
来源:Dotnet9
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

发表评论

登录后才能评论