2012-09-19 52 views
0

我們有一個Windows基礎應用程序,我的客戶也需要使用意大利語言。當我將區域設置更改爲意大利語和運行程序我得到下面的錯誤信息。 「無法對System.DateTime和System.String執行'='操作。」 任何人都可以幫助我解決這個問題嗎?代碼如下。錯誤「更改區域設置後無法對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'"); 

回答

1

首先,不應該是dt.Select("Date ='8/31/2012'");? (注意我刪除了"

二,"8/31/2012"來自哪裏?這不是在意大利的有效日期,所以你需要得到("31/8/2012"),然後它應該工作。

換句話說,如果它來自數據庫,那麼在進行比較之前必須先進行區域設置轉換。

+0

他們是否有任何方式設置通用日期時間格式? – Gayan

+0

您的問題的解決方案取決於該日期來自哪裏。用戶輸入?數據庫?系統日期? – egrunin

相關問題