如何重写以下行以使用.NET 2.0?

时间:2013-02-12 16:06:09

标签: c# datetime .net-2.0

我正在用c#开发一个应用程序,我的目标是net framework 4.0。在我的解决方案的proprieties窗口中,我将目标框架更改为NET Framework 2.0,但应用程序突然停止工作。它向我显示以下错误:

No overload for method ToString() takes 1 argument

导致错误的代码:

  DateTime endTime;
  string endDate = get_end_date_fromDB();

  if (DateTime.TryParseExact(endDate, "dddd, MMMM dd, yyyy", null, DateTimeStyles.None, out endTime))
        {

            TimeSpan ts = endTime.Subtract(DateTime.Now);

            label1.Text = ts.ToString("d' Jours 'h' Heures 'm' Minutes'"); // <<<< THIS LINE IS CAUSING THE ERROR

        }

是否有一种解决方法可以使上面的代码在C#2.0上运行?我需要以特定格式显示日期。

2 个答案:

答案 0 :(得分:13)

较旧的实现没有ToString覆盖格式参数。

label1.Text = string.Format("{0}' Jours '{1}' Heures '{2}' Minutes'", 
                                   ts.Days, ts.Hours, ts.Minutes);

您可以在“其他版本”组合框中选择感兴趣的版本,在MSDN上找到特定于.NET版本的文档。

答案 1 :(得分:2)

label1.Text = string.Format("{0}' Jours '{1}' Heures '{2}' Minutes'", ts.Days, ts.Hours, ts.Minutes);