『PasteSpider』
最新文章
贴代码出品
热门话题
用户问答
lao人言
「搜索」
【本期话题】更多
三人寄语更多
往往会为了一个项目,搭建适合他专属的脚手架!
点赞:1
抛开需求谈架构是无意义的事情!
点赞:0
由于时间的问题,我们往往会给自己埋坑,等着后续或者下一任来填!
点赞:0
实际遇到的问题往往在那些视频课程中是不会出现的!
点赞:0
时好时坏的结果,往往是多线程引起的逻辑混乱导致的!
点赞:0
抛开需求讲架构,和纸上谈兵无差!
点赞:1
对于答案来说,更重要的是找到答案的这个过程而不是答案本身!
点赞:0
测试没问题的不一定没问题,测试有问题的那肯定有问题!
点赞:2
慎用redis的同步我的意见是redis都走异步!!!
点赞:0
逻辑注解清晰的代码优于那些一眼看不明白的语法糖
点赞:0
PasteForm中是如何处理Enum枚举类型的?
惯悲欢离合 2024-10-26 377 39 0
PasteForm中虽然有select的属性,但是很多时候还是使用Enum枚举会比较简单,如果你使用PasteForm,则枚举类型将非常便捷!

枚举类型大量使用于实际开发,因为他规范了取值范围,又不需要额外的开一个数据库表
在PasteForm中Enum主要涉及搜索,表格,表单,详细这几个地方
图片alt
如上图所示,动作类型就是枚举类型(案例testTable)

    ///<summary>
    /// 查询
    ///</summary>
    public class InputQueryTestTable : InputSearchBase
    {
        /// <summary>
        /// 动作类型
        /// </summary>
        public ActionEnum ActionType { get; set; }
    }

你可以把ActionEnum的设定存放于XXX.Domain子项目,也可以存放于XXX.Application.Contracts的子项目中
如下图定义

    /// <summary>
    /// 动作枚举
    /// </summary>
    public enum ActionEnum
    {
        /// <summary>
        /// 正常 可以正常使用的
        /// </summary>
        start = 1,
        /// <summary>
        /// 停止
        /// </summary>
        stop = 4,
        /// <summary>
        /// 取消
        /// </summary>
        cannel = 5
    }

其实和Class的注释一样的,分空格拆分的前端部分和后端部分

系统默认在表单的时候返回全部的,如上图也就是

正常 可以正常使用的

而在List页面的时候,显示

正常

如果使用F12在前端查看,你会发现代码是使用select实现的,也就是和select的属性是一样的,通过F12的网络,可以发现数据返回的时候也是转化成select返回的

select

表示单选,比如权限类型,一般是指固定类型的,一般不修改的那种情况,也可以表示状态等,value的值要基于这个对象的类型来确定,比如string和int

字段 类型 示例 说明
args1 字符 [{“name”:”大”,”value”:”1”},{“name”:”小”,”value”:”2”}] 表示单选的可选值,name是显示 value是值
args2 字符 预留的字段
args3 字符 预留的字段
args4 字符 预留的字段

图片alt

如果在表单页面,我们这么设定

    ///<summary>
    ///测试表 用于测试CURD的表
    ///</summary>
    public class TestTableAddDto
    {
        /// <summary>
        /// 动作类型
        /// </summary>
        public ActionEnum ActionType { get; set; }

    }

在UI上,则是这样显示的
图片alt

为什么在搜索的地方显示

正常

而在表单页面上显示

正常 可以正常使用的

其实是在testTableAppService的文件中有如下区别

图片alt

其实就是调用 ReadModelProperty的参数不一样导致的!

待完成问题?

1.一个枚举类型,在进行搜索的时候,我们一般会多一个选项出来,那就是全部,意思是所有枚举类型都包含进去,比如我们添加一个all=-1,但是这个all=-1的值我们又不希望在表单的时候用户选择这个-1的枚举值!!!

评论列表
惯悲欢离合
39 377 0
快捷注册
热门推荐更多
PasteSpiderFile文件同步客户端
PasteSpider的项目文件客户端,开发中能够快速发布!;
最新动态
  • 120.****.201 正在查看 PasteSpider之--路由列表-私有仓库-环境配置-的介绍 !
  • 61.****.144 正在查看 PasteSpider更新摘要,持续更新 !
  • 201.****.216 正在查看 PasteForm中,表格的不一样的样式的设定? !
  • 170.****.57 正在查看 Redis的安装 !
  • 99.****.129 正在查看 贴代码框架PasteForm特性介绍之mark(标签,书签,字段说明)的支持 !
  • 189.****.205 正在查看 开发者专用Linux容器部署工具PasteSpider(K8S,Jenkins,CICD)介绍 !
  • 167.****.45 正在查看 贴代码框架PasteForm之特性select,lselect,selects的介绍 !
  • 45.****.97 正在查看 PasteSpider之占位符,宏,对象属性遍历的说明 !
  • 121.****.136 正在查看 贴代码框架PasteForm特性介绍之mark(标签,书签,字段说明)的支持 !
  • 113.****.142 正在查看 Serilog在appsettings.json中的配置 !
  • 135.****.15 正在查看 使用PasteSpider实现CI/CD持续部署,类似Jenkins的功能,让你的2G服务器也可以飞起 !
欢迎加入QQ讨论群 296245685 更新记录 [PasteSpider]介绍 @2022-2023 PasteCode.cn 版权所有 ICP证 闽ICP备2021013869号-2