【发布时间】:2026-01-11 22:35:01
【问题描述】:
为我的 Web 应用程序创建了一个应该显示 ASP.NET 图表的 aspx 页面。能够生成图表但不显示在页面上。我可以在我的“临时图表”文件夹中看到生成的图表。
我正在使用 ASP.Net 4 和 .NET Framework 4 并完成了以下操作。
代码是:
<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Web" %>
<%@ Import Namespace="System.Web.UI" %>
<%@ Import Namespace="System.Web.UI.HtmlControls" %>
<%@ Import Namespace="System.Web.UI.WebControls" %>
<%@ Import Namespace="System.Web.UI.WebControls.WebParts" %>
<%@ Import Namespace="System.Xml.Linq" %>
<%@ Import Namespace="System.Collections.Generic" %>
<%@ Import Namespace="System.Collections" %>
<%@ Import Namespace="System.Linq" %>
<%@ Import Namespace="System.Web.UI.DataVisualization" %>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Web.UI.DataVisualization.Charting" %>
<%@ Page Language="C#" %>
<%@ Register Assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI.DataVisualization.Charting" TagPrefix="asp" %>
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
<asp:Chart ID="Chart1" runat="server" ImageLocation="~/TempCharts/ChartPic_#SEQ(200,2)" Height="200px" Width="535px" >
<BorderSkin />
<Series>
<asp:Series Name="Series1" ChartType="Pie" YValuesPerPoint="2" >
<Points>
<asp:DataPoint AxisLabel="4 letter" YValues="20,0" />
<asp:DataPoint AxisLabel="5 letter" YValues="10,0" />
<asp:DataPoint AxisLabel="6 letter" YValues="5,0" />
<asp:DataPoint AxisLabel="7 letter" YValues="16,0" />
</Points>
</asp:Series>
</Series>
<ChartAreas>
<asp:ChartArea Name="ChartArea1" >
</asp:ChartArea>
</ChartAreas>
</asp:Chart>
</div>
</form>
</body>
</html>
并将以下内容添加到 web.config:
<appSettings>
<add key="ChartImageHandler" value="storage=memory;timeout=30;" />
</appSettings>
<system.webServer>
<handlers>
<remove name="ChartImageHandler" />
<add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD,POST"
path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler,
System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</handlers>
</system.webServer>
但我无法在页面上看到图表。我有什么遗漏吗?
已解决:为<asp:Chart>添加了ImageStorageMode属性并设置了值“UseImageLocation”。
【问题讨论】:
-
等等,你为什么要在 aspx 页面中插入 c# sn-ps?使用代码隐藏,它更清晰!你用的是什么IDE?我也可以完美地看到它。
-
我正在我的网络应用程序中实现它。我对使用 .cs 文件有一些限制。我没有为此使用 Visual Studio。
标签: asp.net web-applications charts asp.net-charts