gpt4 book ai didi

c# - EF5;将 20100326 之类的字符串转换为 2010/03/26

转载 作者:太空宇宙 更新时间:2023-11-03 21:44:24 25 4
gpt4 key购买 nike

我有一个数据库,其中日期保存为 CHAR(8),时间保存为 CHAR(6)。例如,数据库中的日期如下所示:2010/03/26 为 20100326,时间为:8 点钟为 080000。

当然,日期和时间不能在客户端以这种方式显示,应该分别转换为如下所示:26/04/2010 和这个 8:00。

我还希望在将日期和时间发送到服务器时将它们转换回数据库格式。我正在寻找一种让服务器执行此操作的方法,例如在元数据类上使用数据注释。但我无法找到方法,如果有人能帮助我或指出正确的方向,我将不胜感激。

我正在使用 Entity Framework 5 并使用 Web API 构建 Web 服务。

谢谢。

顺便说一句:下面是来自包含元数据的部分类的 setter / getter 。

        [Display(ResourceType = typeof(Properties.OrderEntryIn_Resources), Name = "DeliveryTimeFrom")]
public string ZNGU_T { get; set; } // Time

[Display(ResourceType = typeof(Properties.OrderEntryIn_Resources), Name = "DeliveryDateFrom")]
public string ZNGU_D { get; set; } // Date

最佳答案

在数据库中,您应该使用它们提供的 DATE/TIME 类型。

但是,您需要的是(日期):

//DB -> UI
DateTime.ParseExact(input, "yyyyMMdd", CultureInfo.InvariantCulture)
.ToString("yyyy/MM/dd");
//UI -> DB
DateTime.ParseExact(input, "yyyy/MM/dd", CultureInfo.InvariantCulture)
.ToString("yyyyMMdd");

当时:

//DB -> UI
DateTime.ParseExact(input, "HHmmss", CultureInfo.InvariantCulture)
.ToString("H:mm");
//UI -> DB
DateTime.ParseExact(input, "H:mm", CultureInfo.InvariantCulture)
.ToString("HHmmss");

关于c# - EF5;将 20100326 之类的字符串转换为 2010/03/26,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17811004/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com