有没有一种方法可以在C#中获取上个月的名称和年份

akd*_*akd 5 .net c# datetime date

DateTime.Now.ToString("Y") 回报我:2013年8月

有一种简单的方法可以在上个月以相同的格式获得吗?

类似于:DateTime.LastMonth.ToString("Y")和输出将是:2013年7月

我知道这种方法不存在:)但也许有其他东西可以实现输出?或者我需要为此创建自己的方法?

Dar*_*ren 16

为什么不用 DateTime.AddMonths

例如:

var lastMonth = DateTime.Now.AddMonths(-1).ToString("Y");`
Run Code Online (Sandbox Code Playgroud)


Den*_*aub 9

您可以使用添加或减去给定日期的月份 DateTime.AddMonths()

var lastMonth = DateTime.Now.AddMonths(-1);
var lastMonthAsString = lastMonth.ToString("Y");
Run Code Online (Sandbox Code Playgroud)

对于其他时间间隔也是如此AddDays(),AddSeconds()或者AddYears().您可以在MSDN的DateTime文档中找到所有可用的方法.