C# Convert.ToDateTime或DateTime.ParseExact(字符串、格式、null)

C# Convert.ToDateTime或DateTime.ParseExact(字符串、格式、null),c#,C#,我有一个问题,我正在数据库DatetimePicker.value.Day(返回Int)中保存值 现在我在另一张表上得到这个值 label.Text = DataGridViewName.Rows[0].Cells["ColumnName"] +"-"+System.DateTime.Now.ToString("dd-MM-yyyy"); 现在我想比较label.Text的值和当前日期。。。因此,我必须将label.text转换为datetime DateTime DueDate = Date

我有一个问题,我正在数据库
DatetimePicker.value.Day(返回Int)中保存值
现在我在另一张表上得到这个值

label.Text = DataGridViewName.Rows[0].Cells["ColumnName"] +"-"+System.DateTime.Now.ToString("dd-MM-yyyy");
现在我想比较label.Text的值和当前日期。。。因此,我必须将label.text转换为datetime

DateTime DueDate = DateTime.ParseExact(Label.Text, "dd-MM-yyyy",null);

但这两种转换都给我错误的字符串是无效的和盖尔吉安日历错误 我不明白该怎么办

你可以通过

DateTime DueDate = DateTime.ParseExact(Label.Text, "dd-MM-yyyy",CultureInfo.InvarientCulture);

这里
lblDueDate.Text
有我从数据库中存储的日期,然后我在
DateTime
中转换
lblDueDate.Text
来比较这个日期与当前日期之间的差异

您可以通过DateTime DueDate=DateTime.ParseExact(Label.Text,“dd MM yyyy”,CultureInfo.InvarientCulture)来转换它;我发现了一个类似的问题,他把它转换成字符串,然后得到日期format@Shashank谢谢它的工作…@Shashank,你应该把你的评论作为答案:)取一些名声@丹麦语:我已经补充了我的答案。你可以接受。
DateTime DueDate = DateTime.ParseExact(Label.Text, "dd-MM-yyyy",CultureInfo.InvarientCulture);
string s = lblDueDate.Text;
                    DateTime DueDate = DateTime.ParseExact(s, "MM-dd-yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None);