1

私は c# でアプリを開発しており、ネット フレームワーク 4.0 をターゲットにしていました。ソリューションのプロパティ ウィンドウで、ターゲット フレームワークを に変更しました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 で動作させるための回避策はありますか? 日付を特定の形式で表示する必要があります。

4

2 に答える 2

13

ToString古い実装には、フォーマット パラメータによるオーバーライドがありません。

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

「他のバージョン」コンボボックスで目的のバージョンを選択すると、MSDN で .NET バージョン固有のドキュメントを見つけることができます。

于 2013-02-12T16:09:46.890 に答える
2
label1.Text = string.Format("{0}' Jours '{1}' Heures '{2}' Minutes'", ts.Days, ts.Hours, ts.Minutes);
于 2013-02-12T16:12:14.800 に答える