c# - 为通过 C# 呈现的报告服务报告设置语言/文化

标签 c# reporting-services

我用 C# 编写了一个报告渲染器,它运行报告并将报告附加到电子邮件中。这一切都很好,除了在报告标题中列出的参数的日期格式不正确。所有报告的语言都设置为 =User!Language 并且使用 FormatDateTime 函数输出参数以根据用户的区域设置进行格式化。

我基本都是用渲染方式described here on MSDN .

当报告通过浏览器运行时,这一切都很好。但是,当我从 C# 呈现报告时,它使用 en-US 日期格式。

报表服务器的区域设置与运行 C# 程序的计算机的区域设置一样设置为正确的区域。

我需要在我的 C# 程序中设置什么属性才能使用我适当的语言/文化呈现报告?

最佳答案

Here is a similar problem

但是,在这种情况下,您想要做的是覆盖 ReportExecutionService 上的 GetWebRequest 方法,而不是像该答案中那样覆盖 ReportingService:

public partial class ReportExecution : ReportExecutionService
{
    protected override WebRequest GetWebRequest(Uri uri) 
    { 
        WebRequest request = base.GetWebRequest(uri); 
        request.Headers.Add(HttpRequestHeader.AcceptLanguage, CultureInfo.CurrentCulture.Name); 
        return request; 
    }  
}

关于c# - 为通过 C# 呈现的报告服务报告设置语言/文化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13022388/

相关文章:

c# - 数据为空。不能对空值调用此方法或属性。(使用组合框)

c# - 在 .NET 中为方法和线程计时

sql - 以编程方式在 SSRS 报告上设置自动刷新

reporting-services - SSRS 2008 : How to repeat on new page one row of table header

c# - 并行处理许多 HTTP Web 请求的好方法是什么?

c# - 创建 HTML anchor 以编程方式运行 C# 函数

reporting-services - 在SSRS中将多个报告分组为一个

reporting-services - 如何从 SSRS 报告中确定当前用户所在的 AD 安全组?

reporting-services - SSRS 报告中的嵌入图像未显示 - 权限问题

c# - 我的代码是否正确清理了它的 List<MemoryStream>?