Hier versuche ich Datum in systemspezifisches Format zu konvertieren, aber tryparse exact funktioniert nicht kann nicht Datum in angegebenes Dateformat konvertieren kann mir jemand sagen, wie man das erreicht!Parsing Datetime zu spezifizierten Datetime-Format in C#
public partial class HomePage : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
labl.Text = Form1("12/05/2017");
}
protected void UpdateButton_Click(object sender, EventArgs e)
{
}
private string Form1(string date)
{
// Get the Current System culture.
CultureInfo ci = CultureInfo.CurrentCulture;
DateTimeFormatInfo dtfi = ci.DateTimeFormat;
string[] SystemDateTimePatterns = new string[250];
int i = 0;
foreach (string name in dtfi.GetAllDateTimePatterns('d'))
{
SystemDateTimePatterns[i] = name;
i++;
}
string date1 = "asd";
string[] myDateTimeFormat = { "MM-dd-yyyy", "MM/dd/yyyy", "yyyy-dd-MM", "MM/dd/yyyy HH:mm:ss", "dd-MM-yyyy", "dd/MM/yyyy", "yyyy-MM-dd", "dd/MM/yyyy HH:mm:ss" };
foreach (string dateFormat in myDateTimeFormat)
{
if (dateFormat == (SystemDateTimePatterns[0]))
{
SqlParameter StartingDateParam;
DateTime mdate;
if (DateTime.TryParseExact(date, dateFormat, CultureInfo.CurrentCulture, DateTimeStyles.None, out mdate))
{
StartingDateParam = new SqlParameter("@startingdate", SqlDbType.DateTime);
StartingDateParam.Value = mdate;
date1 = StartingDateParam.Value.ToString();
}
}
}
return date1;
}
}
Sie wollen einfach '05.12/2017' auf ein Datum analysieren? Warum so viel Code? Ist das "Monat/Tag/Jahr" oder "Tag/Monat/Jahr"? – Jamiec
TryParseExact hat eine Überladung, die ein Array von Formaten erfordert. All dieser Code ist nicht notwendig – Steve
@jamiec seine dd/MM/JJJJ und so viel Code, weil convert.toDatetime oder tryParse nicht auf der Produktionsseite arbeitet, deshalb mache ich dies – abhishek