⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 drilldownmanual.aspx

📁 掌握学习.net开发的非常好的资料
💻 ASPX
字号:
<%@ Page Language="C#" Debug="true" Trace="false" Description="dotnetCHARTING Component"%>
<%@ Register TagPrefix="dotnet"  Namespace="dotnetCHARTING" Assembly="dotnetCHARTING"%>
<%@ Import Namespace="System.Drawing" %>


<script runat="server">
void Page_Load(Object sender,EventArgs e)
{
	DataEngine de;
	SeriesCollection sc=null;
	Series seriesObj=null;
	
	//set global properties
    Chart.Title="Item sales";  
    Chart.TempDirectory="temp";
    Chart.Debug=true;
    Chart.DefaultSeries.DefaultElement.ToolTip="%yvalue";

    dotnetCHARTING.TimeInterval curTimeInterval = TimeInterval.Years;
 
   string dateGrouping = HttpContext.Current.Request.QueryString["dategrouping"];
   if(dateGrouping ==null || dateGrouping=="")
		dateGrouping="Years";
   else if(dateGrouping !=null && dateGrouping!="")
   	curTimeInterval = (dotnetCHARTING.TimeInterval)Enum.Parse(typeof(dotnetCHARTING.TimeInterval), dateGrouping,true);
   	string startDateString = HttpContext.Current.Request.QueryString["startDate"];
   	DateTime startDate = new DateTime(2002,1,1,0,0,0);
   	if(startDateString !=null && startDateString!="")
   		startDate = DateTime.Parse(startDateString);
   		
	
	DateTime endDate = new DateTime();
	 
 	switch(curTimeInterval)
 	{
 		case TimeInterval.Years:
 			Chart.XAxis.Label.Text="Years";
 			de = new DataEngine();
 			de.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;data source=" + Server.MapPath("../../database/chartsample.mdb");  
 			de.DateGrouping = curTimeInterval ;
		    de.StartDate=new System.DateTime(2002,1,1,0,0,0);
    		de.EndDate = new System.DateTime(2002,12,31,23,59,59);
    		de.SqlStatement= @"SELECT OrderDate,Sum(Quantity) FROM Orders  WHERE OrderDate >= #STARTDATE# AND OrderDate <= #ENDDATE#  GROUP BY Orders.OrderDate ORDER BY Orders.OrderDate";
    		sc = de.GetSeries();
    		if(sc != null && sc.Count > 0)
    		{
    			seriesObj = sc[0];  		
    			foreach(Element el in seriesObj.Elements)
    			{
    				el.URL = "?dategrouping=quarters&startDate=" + startDate.ToString();
    				startDate = startDate.AddYears(1);
    			}
    		}
    	break;
    	case TimeInterval.Quarters:
 			Chart.XAxis.Label.Text="Quarters";
 			de = new DataEngine();
 			de.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;data source=" + Server.MapPath("../../database/chartsample.mdb");  
 			de.DateGrouping = curTimeInterval ;
		    de.StartDate=new System.DateTime(2002,1,1,0,0,0);
    		de.EndDate = new System.DateTime(2002,12,31,23,59,59);
    		de.SqlStatement= @"SELECT OrderDate,Sum(Quantity) FROM Orders  WHERE OrderDate >= #STARTDATE# AND OrderDate <= #ENDDATE#  GROUP BY Orders.OrderDate ORDER BY Orders.OrderDate";
    		sc = de.GetSeries();
    		if(sc != null && sc.Count > 0)
    		{
    			seriesObj = sc[0];  		
    			foreach(Element el in seriesObj.Elements)
    			{
    				el.URL = "?dategrouping=months&startDate=" + startDate.ToString();
    				startDate = startDate.AddMonths(3);
    			}
    		}
    	break;
    	case TimeInterval.Months:
 			Chart.XAxis.Label.Text="Months";
 			de = new DataEngine();
 			de.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;data source=" + Server.MapPath("../../database/chartsample.mdb");  
 			de.DateGrouping = curTimeInterval ;
		    de.StartDate=startDate;
		    endDate = startDate.AddMonths(3); 
		    endDate = endDate.AddTicks(-1);
    		de.EndDate = endDate;
    		de.SqlStatement= @"SELECT OrderDate,Sum(Quantity) FROM Orders  WHERE OrderDate >= #STARTDATE# AND OrderDate <= #ENDDATE#  GROUP BY Orders.OrderDate ORDER BY Orders.OrderDate";
    		sc = de.GetSeries();
    		if(sc != null && sc.Count > 0)
    		{
    			seriesObj = sc[0];  		
    			foreach(Element el in seriesObj.Elements)
    			{
    				el.URL = "?dategrouping=days&startDate=" + startDate.ToString();
    				startDate = startDate.AddMonths(1);
    			}
    		}
    	break;
    	case TimeInterval.Days:
 			Chart.XAxis.Label.Text="Days";
 			de = new DataEngine();
 			de.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;data source=" + Server.MapPath("../../database/chartsample.mdb");  
 			de.DateGrouping = curTimeInterval ;
		    de.StartDate=startDate;
		    endDate = startDate.AddMonths(1); 
		    endDate = endDate.AddTicks(-1);
    		de.EndDate = endDate;
    		de.SqlStatement= @"SELECT OrderDate,Sum(Quantity) FROM Orders  WHERE OrderDate >= #STARTDATE# AND OrderDate <= #ENDDATE#  GROUP BY Orders.OrderDate ORDER BY Orders.OrderDate";
    		sc = de.GetSeries();
    		if(sc != null && sc.Count > 0)
    		{
    			seriesObj = sc[0];  		
    			foreach(Element el in seriesObj.Elements)
    			{
    				el.URL = "?dategrouping=hours&startDate=" + startDate.ToString();
    				startDate = startDate.AddDays(1);
    			}
    		}
    	break;
    	case TimeInterval.Hours:
 			Chart.XAxis.Label.Text="hours";
 			de = new DataEngine();
 			de.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;data source=" + Server.MapPath("../../database/chartsample.mdb");  
 			de.DateGrouping = curTimeInterval ;
		    de.StartDate=startDate;
		    endDate = startDate.AddDays(1); 
		    endDate = endDate.AddTicks(-1);
    		de.EndDate = endDate;
    		de.SqlStatement= @"SELECT OrderDate,Sum(Quantity) FROM Orders  WHERE OrderDate >= #STARTDATE# AND OrderDate <= #ENDDATE#  GROUP BY Orders.OrderDate ORDER BY Orders.OrderDate";
    		sc = de.GetSeries();
    	break;
    }

    Chart.SeriesCollection.Add(sc);
   
}
</script>
<HTML><HEAD><TITLE>Drill Down Manual Sample</TITLE></HEAD>
<BODY>
<DIV align=center>
 <dotnet:Chart id="Chart"  runat="server"/>
 
</DIV>
</BODY>
</BODY>
</HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -