我在使用MS reporting service 2010在客户端检索正确的日期格式时遇到问题。
日期类型的英国日期格式(18/05/2011)被分配给重新处理服务器上托管的rdl文件中的参数的默认值。但是,当日期值通过报告服务2010变为美国格式(5/18/2011)时。
ReportingService2010 reportingService = new ReportingService2010();
reportingService.Credentials = CredentialCache.DefaultCredentials;
ItemParameter[] parameters = reportingService.GetItemParameters(reportUrl, historyId, forRendering, values, credentialses);
foreach (var parameter in parameters)
{
//parameter.DefaultValues //date value changed from British value to US
}
有什么想法吗?
答案 0 :(得分:1)
我必须在生成的ReportingService类旁边创建一个partial类,并覆盖GetWebRequest方法,然后向Web请求添加Accept-Language标头。这是一个示例类:
public partial class ReportingService
{
protected override System.Net.WebRequest GetWebRequest(Uri uri)
{
WebRequest request = base.GetWebRequest(uri);
request.Headers.Add(HttpRequestHeader.AcceptLanguage, CultureInfo.CurrentCulture.Name);
return request;
}
}