最近做了一个统计访问量的曲线图,用的是VS自带的Chart控件,测试的时候MSChart在VS中直接运行正常,
但是发布后报错:图表处理程序配置 [c:\TempImageFiles\] 中的临时目录无效。System.IO.DirectoryNotFoundException。如下图所示:
从网上找了找资料发现是Chart控件生成图表时产生了临时文件,是临时文件的路径出了问题,修改方法简述如下:
第一步:修改web.config文件,如下:(红色部分根据自己项目的情况来定)
<appSettings>
<add key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;" />
</appSettings>
改成:
<appSettings>
<add key="ChartImageHandler" value="storage=file;timeout=20;Url=~/TempImageFiles/;" />
</appSettings>
第二步:在项目的根目录中新建文件夹 TempImageFiles ,并修改文件夹的权限,我是添加了everyone 用户,并给它 完全控制 的权限,我的方式不好,安全性不高,最好根据项目整体的安全策略来设定权限。
本人才疏学浅,以上内容仅供参考!