~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
开发工具与关键技术:VS
作者:宋永烨
撰写时间:2019/7/17
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在页面的查询功能中,可能会含有时间类型的数据,而时间类型的数据,如果直接返回回页面,回得到一个时间戳
这个格式的时间并不能直接用于显示,需要通过转换数据类型,转换为
这是常用的时间类型的格式
转换时间类型一般通过创建一个类,在类中创建一个私有的支付串,再创建一个公开的字符串将私有字符串转换为时间类型后再通过Tostring()方法修改为字符串并改变显示的格式(默认显示的格式的分隔符是‘/’,而layui支持的时间格式的分隔符是中划线)
通过类转换时间类型
但由于本人项目因未知BUG 导致时间类型的转换后,秒数会归零 (此问题经测试应该是显示问题,实际数据不受影响)
所以本人通过其他方式转换时间类型(其实与老师给的这种差不多,但获得的值稍有出入);
转换的方法有两个情况
1.转换的数据只有一条, 通过主键ID查询数据,返回的值只有一条,如果使用老师的方法通过类来查询,需要将所需的字段全部列出,然后赋值给类中时间类型已转化的字段
写法类似与下图所示
本方法通过在控值其中直接查询出需要修改类型的字段后直接转换 写法 如下图所示
由于查询代码有点长,所以图片不够清晰 以下为写法的文字描述版
声明一个变量(使用var 声明变量会自动转换数据类型), 查询需要修改数据类型的字段,由于是通过主键ID查询(或者别的可以只查询出一条数据的值) 所以可以使用single()方法
然后再通过ToString()方法即可将时间类型转换为支付串即所需时间类型
通过ToString()方法后获取的时间
2.还有一种情况,由于查的数据可能存在多个,比如一个表的明细表,关系可能是一对多,这是后可以通过fo循环将每一个明细表的时间获取到后再赋值给一个数组 写法如下图所示
与一条数据获取值不同的是,使用了数组获取值
总结:
此方法的实质是通过单独查询出需要转换的时间类型的数据后通过使用ToString()方法,将数据转换为方便阅读的字符串格式,本方法实际上与老师的方法差别不大,但老师的方法获取到的所有数据在同一个对象中,而本方法会获取到多个对象或数组,故而返回值时,需要通过特殊的方法返回多个值给页面