C#

2013-08-01 5 views
5

DateTime.Now.ToString("Y") geçtiğimiz ay adını ve yılı almak için bir yöntem beni orada döndürür mı: 2013C#

Ağustos aynı formatta geçen ay elde etmenin kolay bir yöntem var mı? gibi

şey: DateTime.LastMonth.ToString("Y") ve çıkış olacaktır: Temmuz 2013

Bu yöntem doesnt var biliyorum :) ama belki de bu çıktıyı elde etmek başka bir şey var mı? Yoksa bunun için kendi yöntemimi oluşturmam gerekecek mi?

var lastMonth = DateTime.Now.AddMonths(-1).ToString("Y");` 

cevap

16

Neden Örneğin DateTime.AddMonths

kullanmak AddDays(), AddSeconds() veya AddYears(). Mevcut tüm yöntemleri MSDN's DateTime documentation adresinde bulabilirsiniz.

+0

olmasını görünmüyor DateTime statik bir yöntem mi? – akd

+1

Şimdi al ben de kullanıyorum :) – akd

+0

Teşekkür ederim :) – akd

9

Belirli bir tarihten itibaren ay ekleme veya çıkarma aynı gibi diğer zaman aralıkları için var DateTime.AddMonths()

var lastMonth = DateTime.Now.AddMonths(-1); 
var lastMonthAsString = lastMonth.ToString("Y"); 

kullanarak:

1

Kullanım uzatma yöntemleri ... çizgisinde Belki bir şey ... Eğer ay adı kısaltılmış almak istiyorsanız

public static string LastMonth(this DateTime dt) 
{ 
return DateTime.Now.AddMonths(-1).ToString("Y"); 
} 
0

, hatları aşağıda can,

DateTime lastMonth = DateTime.Now.AddMonths(-1); 
string Month =  CultureInfo.CurrentCulture.DateTimeFormat.GetAbbreviatedMonthName(lastMonth.Month) ;