SSRS的Dundas自定义代码不执行

问题描述:

我有一个登打士图表被在SSRS报告使用的PostInitilize事件一些自定义代码看起来是这样的:SSRS的Dundas自定义代码不执行

foreach(CustomLabel curLabel in chartObj.ChartAreas[0].AxisY.CustomLabels) 
{ 
    curLabel.GridTick = GridTick.None; 
    curLabel.Text = Convert.ToString(Convert.ToInt32(curLabel.Text) - 10); 
} 

它需要每个轴的标签,并降低值通过10.

这对我的机器很好,它甚至可以在报告查看器中的生产服务器上正常工作。但是,当此报告作为订阅运行时,代码无法运行。报告生成得很好,但轴标签保持不变。

这怎么会发生?作为订阅运行报表有什么不同?

经过多次搜索,我发现了解决方案。

问题是我的开发机器上Dundas的版本稍微比生产版本(2.2 v 2.1)更新。这会导致代码程序集不被我信任。 (但只有在无人值守的情况下运行?)

显而易见的解决方案是升级服务器或降级我的开发机器,以便匹配版本号。我无法触及服务器上的安装,降级我自己的机器需要很长时间并且很烦人。但还有另一种解决方案。

找到一台安装了正确版本的dundas的机器,在Visual Studio中打开报表,打开代码,做一个表面(如添加空行或注释)然后编译代码。这份报告现在将包含'正确'的程序集。将其部署到服务器,并且一切都应该工作。