0

我想以字符串形式获取日期时间对象,例如“mm/yyyy”

ViewBag.Created = d.item.StartDate.ToString("mm/yyyy"); 

但我得到的字符串是 10-2012。请帮助我克服这个问题。

4

3 回答 3

2

月份的格式,应该是MMmm是分钟

 ViewBag.Created = d.item.StartDate.ToString("MM/yyyy", 
                                              CultureInfo.InvariantCulture); 
于 2012-10-31T07:09:36.293 回答
2

mm是分钟,并且/特定于区域性的日期分隔符。这听起来像在当前的文化中,-是日期分隔符。我怀疑你想要MM/yyyy使用不变的文化,它/作为分隔符:

ViewBag.Created = d.item.StartDate.ToString("MM/yyyy",
                                            CultureInfo.InvariantCulture);

或者,您可以只引用斜线:

ViewBag.Created = d.item.StartDate.ToString("MM'/'yyyy");

请注意,如果当前区域性使用非公历,则此差异也会更改月份和年份数字。

有关更多详细信息,请参阅有关自定义日期和时间格式说明符的 MSDN 页面

您确定要修复所有文化的格式吗?不幸的是,没有办法说“给我一个适合文化的月份和年份格式”,但你至少需要意识到这对某些人来说可能看起来很奇怪。

于 2012-10-31T07:09:49.530 回答
0

您可以使用

ViewBag.Created = d.item.StartDate.ToString(@"MM\/yyyy");
于 2012-10-31T07:11:35.287 回答