网络表单中的ASP.Net图表可以在本地系统上工作,而不能在网络服务器上工作
本文关键字:工作 网络 表单 不能 服务器 网络服务 系统 Net ASP | 更新日期: 2023-09-27 18:27:19
我在asp.net 4.0 web表单应用程序中使用MS Charts 4.0来生成一些图表。它在Windows 7、IIS 7.5、Visual Studio 2010和ASP.net 4.0/FW 4.0的本地系统上运行良好。
当我在web服务器上上传相同的内容时,它会产生错误执行ChartImg.axd的子请求时出错。
<httpHandlers>
<add path="ChartImg.axd" verb="GET,HEAD,POST" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false" />
</httpHandlers>
</system.web>
<appSettings>
<add key="ChartImageHandler" value="Storage=file;Timeout=20;Url=~/tempImages/;" />
</appSettings>
<system.webServer>
<!--
<handlers>
<add name="ChartImg" path="ChartImg.axd" verb="GET,HEAD,POST" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</handlers>
-->
<validation validateIntegratedModeConfiguration="false" />
</system.webServer>
在实现了两个解决方案之后,它仍然不起作用。我试着在system.webserver中使用处理程序,正如你所看到的,它在代码中被注释了,但它仍然不起作用。如果我在不同的网络服务器上上传相同的内容,它可以工作,但在实时服务器上不工作。Live服务器还安装了IIS 7.5和Framework 4.0。
你能告诉我这是否与web服务器配置有关,而不是与web.config文件有关吗?因为相同的代码在本地机器和mochahosts共享主机测试帐户上运行良好,但在实时服务器上则不然。
我尝试了以下和相关的解决方案,但似乎都不起作用MSCharts";未找到请求类型';的http处理程序;获取'"错误
在我的实时配置中,我实际上同时拥有HTTPHandlers和Handlers:
<system.webServer>
<handlers>
<add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD,POST" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</handlers>
</system.webServer>
<system.web>
<httpHandlers>
<add path="ChartImg.axd" verb="GET,HEAD" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
</httpHandlers>
</system.web>
但也可能是您没有正确访问~/tempimages/
文件夹的权限?