转换日期格式从javascript到c#

本文关键字:javascript 日期 格式 转换 | 更新日期: 2023-09-27 18:17:09

在c#中我们有日期格式为日:dd(小写)月:MM(大写)年:yyyy(小写)

但是在moment.js中日期格式略有不同日:DD(大写)月:MM(大写)年:YYYY(大写)

所以当我从前端(javascript)发送日期格式到后端(c#)由于日期格式不匹配,我得到一个异常。

在c#中是否有任何方法将时刻日期格式转换为c#格式?

转换日期格式从javascript到c#

如果我正确理解你的问题,我相信你想要。net的DateTime.ParseExact方法。

c#中DateTime的扩展方法

public static class FormatProviderExtension
{
   public static string ToMomentJSString(this DateTime arg, string format)
   {
       if (arg == null) throw new ArgumentNullException("arg");
       if (arg.GetType() != typeof(DateTime)) return arg.ToString();
       var date = (DateTime)arg;
       format = format
           .Replace("DD", "dd")
           .Replace("YYYY", "yyyy"); //etc.
       return date.ToString(format);
   }
}

用法:

var d = DateTime.Now;
Console.WriteLine(d.ToMomentJSString("DD MM YYYY"));
Console.WriteLine(d.ToMomentJSString("DD"));
Console.WriteLine(d.ToMomentJSString("YYYY"));