2012-07-28 115 views
0

我正在使用asp.net和mysql。在Rdlc報告中,我無法顯示日期。如何刪除日期列給Rdlc報告錯誤?並希望在報告中顯示mysql日期

首先它給出了一個錯誤,如無法將mysql日期轉換爲system.date。所以我添加了Allow Zero Datetime = true;在連接字符串中。現在報告顯示...

但是它在報告列中顯示#Error。

數據集名稱 - mcubicDataSet.xsd DataDable名稱是 - fo_reserv

預覽數據在VS2010: -

enter image description here

RDLC報告: -

enter image description here

回答

-1

變化數據庫中從datetime到text的字段類型。由於字段類型不匹配,此錯誤會發生。

0

有當這發生在我身上的兩個實例,以及3個解決方案

  1. 的RDLC報告是綁定到由Visual Studio通過你的MySQL連接器生成的數據集。有時,創建的數據集的日期列的日期列爲MySqlDateTime,而不是默認的System.DateTime。 要查看此打開您的Report.rdlc,然後查看報告數據(Ctrl + Alt + D)以查看dataSet,右鍵單擊屬性,然後檢查列中的數據類型。 enter image description here 轉到表示數據集來自哪裏的數據源的文件,並在編碼窗口中打開設計器文件。在我的情況下,我的名爲pos_dbDataSet.xsd,名爲pos_dbDataSet.Designer.cs的設計器文件一旦打開它,您可以在日期dataTypes找到日期(Ctrl + H)上執行字符串替換:MySql.Data.Types。 MySqlDateTime relpace與:System.DateTime。 小心只能在當前文檔中全部替換。儘管此更改可能無法在您的報告數據集上重新生成,但報告應該運行。

enter image description here 2.使用數據源配置嚮導重建數據源/數據集。

  1. (不太可能)rdlc報告使用操作系統的日期格式,因此MySql格式和OS格式之間可能會有衝突。我解決這個問題的方法是在計算機的日曆或區域設置上更改我的日期時間格式,以更好地匹配數據庫格式。我使用的是英國格式,並改爲美國格式。

Calender/Format Settings