0

Windows ベースのアプリケーションがあり、クライアントもイタリア語で作業する必要があります。地域設定をイタリアに変更してプログラムを実行すると、次のエラー メッセージが表示されます。「System.DateTime および System.String に対して '=' 操作を実行できません。」誰でもこれについて私を助けることができますか? コードを以下に示します。

      DataTable dt = new DataTable();
      dt.Columns.Add("Date",Type.GetType("System.DateTime"));

      TimeSpan t = new TimeSpan(1, 0, 0);

        DateTime d = System.DateTime.Now;
        for (int i = 0; i < 100; i++)
        {
            DataRow dr = dt.NewRow();
            dr["Date"] = d.ToShortDateString();
            dt.Rows.Add(dr);
            d = d.AddDays(1.0);
        }

        DataRow[] dataRowArray = dt.Select("Date ="'8/31/2012'");
4

1 に答える 1

1

まず、そうすべきではありませんdt.Select("Date ='8/31/2012'");か?(私が削除したことに注意してください"

第二に、どこ"8/31/2012"から来たのですか?イタリアでは有効な日付ではないため、正しく取得する必要があります("31/8/2012")

つまり、データベースからのものである場合は、比較を行う前にロケール変換を行う必要があります。

于 2012-09-19T07:09:08.417 に答える