C#ASP.NET:可以';t将日期时间转换为字符串

本文关键字:日期 时间 转换 字符串 NET 可以 C#ASP | 更新日期: 2023-09-27 18:00:03

我想将datetime转换为字符串。

但现在返回的结果是04 August, 0016,这不是我所需要的。

我希望结果是04 August, 2016

C#代码:

DataTable dtGroupCurr = new DataTable();
dtGroupCurr = sourceGroupCurr.Tables[0];
var groupedCurr = (from dt2 in dtGroupCurr.AsEnumerable()
    select new
    {
         S_DATE = dt2.Field<DateTime>("S_DATE"),
         BANK_CODE = dt2.Field<string>("BANK_CODE"),
         BANK_NAME = dt2.Field<string>("BANK_NAME")
    }).Distinct().OrderBy(x => x.S_DATE);
foreach (var s in groupedCurr)
{
     string rDate = s.S_DATE.ToString("yyyy/MM/dd");
     IFormatProvider culture = new CultureInfo("en-US", true);
     DateTime date = DateTime.Parse(rDate, culture);
     string sDate = date.ToString("dd MMMM, yyyy", CultureInfo.InvariantCulture);
}

提前感谢;)

C#ASP.NET:可以';t将日期时间转换为字符串

尝试:

 string sDate = s.S_DATE.ToString("dd MMMM, yyyy", new CultureInfo("en-US", true));

string rDate = s.S_DATE.ToString("yyyy/MM/dd",  CultureInfo.InvariantCulture); // To avoid override 
IFormatProvider culture = new CultureInfo("en-US", true);
DateTime date = DateTime.Parse(rDate, culture);
string sDate = date.ToString("dd MMMM, yyyy", CultureInfo.InvariantCulture);

"/"自定义格式说明符表示日期分隔符用于区分年、月和天。合适的本地化日期分隔符是从当前或指定的DateTimeFormatInfo.DateSeparator属性文化

MSDN

使用DateTime.ParseExact方法并指定如下格式:

string rDate = s.S_DATE.ToString("yyyy/MM/dd");
IFormatProvider culture = new CultureInfo("en-US", true);
DateTime date = DateTime.ParseExact(rDate, "yyyy/MM/dd", culture);
string sDate = date.ToString("dd MMMM, yyyy", CultureInfo.InvariantCulture);

使用日期或DateTime.ToShortDateString()Date.ToString("dd-MM-yyyy")