如果我在C#文件中有XML数据,而不是使用setXMLUrl(/blah.blah.xml);要从XML文件中检索XML信息,从ASP.net中使用的C#文件中提取XML数据需要哪些函数或代码?
这就是代码:
myChart.setXMLUrl("/Controls/TaskOrder/TaskSummary.asc/TaskSummary.ascx.cs");
我在setXMLUrl(“”)中渲染图表;区域是读取数据的位置。通常它来自这样的XML文件:
myChart.setXMLUrl("data/data.XML");
但由于我的XML数据附加在C#文件中,因此我不能使用setXMLUrl,因为它没有直接引用XML。
以下是代码背后的更新内容:
public void SetLine3Chart(DataSet exDT)
{
StringBuilder xmlData = new StringBuilder();
xmlData.Append("<chart caption='Current Period: Total Months: 12' chartBottomMargin='8' chartTopMargin='04' captionPadding='01' xAxisNamePadding='-20' yAxisNamePadding='05' chartRightMargin='20' showBorder='0' yAxisName='' xAxisName='' numberPrefix='$' formatNumberScale='0'>");
xmlData.Append("<categories>");
xmlData.Append("<category label='January'/>");
xmlData.Append("<category label='February'/>");
xmlData.Append("<category label='March'/>");
xmlData.Append("<category label='April'/>");
xmlData.Append("<category label='May'/>");
xmlData.Append("<category label='June'/>");
xmlData.Append("</categories>");
xmlData.Append("<dataset seriesName='Budget Spent' >");
xmlData.Append("<set value='3478'/>");
xmlData.Append("<set value='2557'/>");
xmlData.Append("<set value='5379'/>");
xmlData.Append("<set value='4987'/>");
xmlData.Append("<set value='1790'/>");
xmlData.Append("<set value='6367'/>");
xmlData.Append("</dataset>");
xmlData.Append("<dataset seriesName='Average Spending' renderAs='Line'>");
xmlData.Append("<set value='4375'/>");
xmlData.Append("<set value='4675'/>");
xmlData.Append("<set value='6354'/>");
xmlData.Append("<set value='7648'/>");
xmlData.Append("<set value='4578'/>");
xmlData.Append("<set value='4763'/>");
xmlData.Append("</dataset>");
xmlData.Append("<styles>");
xmlData.Append("<definition>");
xmlData.Append("<style name='Font_0' type='font' font='Arial' size='12' color='666666' rightMargin='15' />");
xmlData.Append("</definition>");
xmlData.Append("<application>");
xmlData.Append("<apply toObject='CAPTION' styles='Font_0'/>");
xmlData.Append("</application>");
xmlData.Append("</styles>");
xmlData.Append("</chart>");
Literal9.Text = FusionCharts.RenderChart("/Dashboard/Charts/MSCombi2D.swf", "", xmlData.ToString(), "line3Chart", "100%", "100%", false, false);
}
答案 0 :(得分:1)
这看起来很奇怪:
myChart.setXMLUrl("/Controls/TaskOrder/TaskSummary.asc/TaskSummary.ascx.cs");
你可能错了。 : - )
您必须从url连接xml / json数据。因此,创建ashx处理程序以通过某些参数提供XML / json数据,而不是将此处理程序的url放入脚本中。另外看一下,如果有可能从javascript变量向FusionChart对象提供数据。这可能有所帮助。
在这里你可以看到发送XML数据的ashx处理程序:C# Change my sitemap from ashx to xml(只缺少数据)。