Вы можете сделать это, указав культуру, которая использует формат dd-mm-yyyy, например, Германия:
DateTime dateTime = DateTime.Parse("01-12-2009", CultureInfo.GetCultureInfo("de-DE"));
Console.WriteLine(dateTime.ToString("dd MMM yyyy"));
производит:
01 Dec 2009
Конечно, вы действительно хотите выполнить всю специфичную для вашей культуры обработку в культуре вашего пользователя. Итак, CultureInfo.GetCultureInfo("de-DE")
должно быть CultureInfo.CurrentCulture
.
И если ваш пользователь не привык видеть даты вроде dd-mm-yyyy, не используйте этот формат.