我們有一個SSRS報告接受一個日期/時間輸入參數。我們發現報告在從我們的Silverlight客戶端執行時失敗,並顯示以下錯誤:SSRS報告只接受美國日期參數
「爲報告參數'CurrentDate'提供的值對其類型無效。」
在進一步調查中,我們發現,當日期值傳遞給報告的日期數大於12時,報告失敗。 01/01/2011是好的。 17/06/2011將失敗。這告訴我們,SSRS框的報告必須以美國格式的日期,即mm/dd/yyyy。
我該如何解決這個問題?到目前爲止,我已經嘗試了以下內容:
我已經將報告中的Language屬性設置爲en-GB。這沒有什麼區別。 我剛剛在執行報告之前更改了Silverlight代碼中的語言環境,例如,
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
ExecuteReport();
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-GB");
這個工程,但我不滿意這個解決方案。這似乎是一個很大的黑客,只是爲了讓我們的SSRS報告接受日期。
爲什麼SSRS期望所有的日期參數都是美式格式?我能解決這個問題嗎?請幫忙!