Как построить XML-файл из набора данных - PullRequest
0 голосов
/ 13 сентября 2011

У меня есть запрос, который дает мне значение состояния, где выходные данные запроса хранятся в ResultSet,

IResultSet resultSet = dbManager.Provider.GetData(dataOperation);

Как я могу создать XML следующего типа с данными узла значенияв теге xml должно быть установлено значение в ResultSet

<Chart editMode='1' bgColor='FFFFFF' bgAlpha='0' showBorder='0' upperLimit='1000' lowerLimit='0' numberPrefix='$' gaugeRoundRadius='5' chartBottomMargin='30' ticksBelowGauge='0' placeTicksInside='0' showGaugeLabels='0' pointerOnTop='1' pointerRadius='14' chartLeftMargin='25' chartRightMargin='30' majorTMColor='868F9B' majorTMHeight='10' majorTMThickness='2' pointerBgAlpha='0' pointerBorderThickness='2' majorTMNumber='0' minorTMNumber='0' showToolTip='0' decimals='0'>

    <colorRange> 
        <color minValue='0' maxValue='100' code='F6BD0F' />
    </colorRange>

    <value>665</value>

    <trendpoints>
        <point value='350' fontcolor='FF4400' useMarker='0' dashed='1' dashLen='1' dashGap='3' markerRadius='5' color='FF654F' alpha='100' thickness='2'/>
        <point value='800' fontcolor='FF4400' useMarker='0' dashed='1' dashLen='1' dashGap='3' markerRadius='5' color='8BBA00' alpha='100' thickness='2'/>
    </trendpoints>

    <annotations>
        <annotationGroup id='Grp1' showBelow='1'>
            <annotation type='rectangle' x='2' y='2' toX='445' toY='95' radius='10' fillColor='D6E0F6' fillAngle='90' borderColor='868F9B' borderThickness='2'/>
        </annotationGroup>
    </annotations>

    <styles>
        <definition>
            <style name='ValueFont' type='Font' bgColor='333333' size='10' color='FFFFFF'/>
            <style name='RectShadow' type='Shadow' strength='3'/>
        </definition>
        <application>
            <apply toObject='VALUE' styles='valueFont'/>
            <apply toObject='Grp1' styles='RectShadow' />
        </application>
    </styles>
</Chart>

Ответы [ 2 ]

2 голосов
/ 13 сентября 2011

Если вы реализуете свою собственную структуру XML, стоит использовать Linq to XML вместо StringBuilder.

Ознакомьтесь с этой статьей , это должно помочь.

2 голосов
/ 13 сентября 2011

не уверен, если:

IResultSet resultSet = dbManager.Provider.GetData(dataOperation);

на самом деле объект набора данных, не похоже на ...

в объекте ADO.NET Syste.Data.DataSet есть метод для записи XML-файла содержащихся данных, см. Здесь:

Метод DataSet.WriteXml

вызывая этот метод, вы в порядке, и затем вы можете проверить сгенерированный файл XML.

в заголовке вашего вопроса вы спрашиваете, как создать XML из набора данных, а не из IResultSet

...