我在SSRS报告中使用了一个Dundas图表,在PostInitilize事件中使用了一些自定义代码,如下所示:
foreach(CustomLabel curLabel in chartObj.ChartAreas[0].AxisY.CustomLabels)
{
curLabel.GridTick = GridTick.None;
curLabel.Text = Convert.ToString(Convert.ToInt32(curLabel.Text) - 10);
}它接受每个轴标签,并将值减少10。
这在我的机器上运行得很好,甚至在报表查看器中的生产服务器上也运行得很好。但是,当此报表作为订阅运行时,代码无法运行。报告生成正常,但轴标签保持不变。
这怎么会发生呢?将报表作为订阅运行有什么不同?
发布于 2009-04-30 11:40:02
经过多次搜索,我找到了这个问题的解决方案。
问题是我的开发机器上的Dundas版本比生产中的版本(2.2v2.1)稍新一些。我猜这会导致代码程序集不受信任。(但仅当运行无人值守时?)
显而易见的解决方案是升级服务器,或者将我的开发机器降级,以使版本号匹配。我不能接触服务器上的安装,而且降级我自己的机器需要很长时间,而且很烦人。但还有另一种解决方案。
找到一台安装了正确版本的dundas的机器,在Visual Studio中打开报告,打开代码,进行表面处理(如添加空行或注释),然后编译代码。该报告现在将包含“正确的”程序集。将它部署到服务器上,一切都应该正常工作。
https://stackoverflow.com/questions/805022
复制相似问题