DateTime Convert from int to Month Name in C#, Silverlight
I am trying to print out the name of the month not the integer value of each month. (for example if the date is 2/2/2002, I would like the "month" to read out "February" instead of "2."
I am pulling in the system.DateTime.now to get the current month. When I try to print out the current month on the form, it just puts the correlating integer value for the month, whereas I would like to have the Month Name.
I know this can be done using switch-case or if statements to individually convert the numbers into word values, but I was just won开发者_开发百科dering if there was a simple, built-in conversion command that will automatically tell the application to print out the month's name instead of it's correlating integer value.
I am programming in the Visual Studio 2010 environment using C#-4.0, Silverlight-4.0.
Try DateTime.Now.ToString("MMMM")
See MSDN: Custom Date and Time Format Strings for other format strings.
You can also get it like this:
var month = 7;
var dtf = CultureInfo.CurrentCulture.DateTimeFormat;
string monthName = dtf.GetMonthName(month);
string abbreviatedMonthName = dtf.GetAbbreviatedMonthName(month);
Resources:
- DateTimeFormatInfo.GetMonthName Method
- DateTimeFormatInfo.GetAbbreviatedMonthName Method
- DateTimeFormatInfo Methods
- DateTimeFormatInfo Properties
If you want the full date (in your case: February 2, 2002) use:
myDate.ToString("MMMM dd, yyyy")
For just the month: .ToString("MMMM")
is correct.
精彩评论