0

如果我在 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);
    }
4

1 回答 1

1

这看起来很奇怪:

myChart.setXMLUrl("/Controls/TaskOrder/TaskSummary.asc/TaskSummary.ascx.cs");

你可能错了。:-)

您必须从 url 连接 xml/json 数据。因此,创建 ashx 处理程序以通过一些参数提供 XML/json 数据,然后将此处理程序的 url 放入您的脚本。还要看一下,是否有可能从 javascript 变量向 FusionChart 对象提供数据。它可能会有所帮助。

在这里您可以看到 ashx 处理程序发送 XML 数据:C# 将我的站点地图从 ashx 更改为 xml(仅缺少数据)。

于 2013-07-17T20:52:07.047 回答