Как разобрать XML-файл через службу windows и загрузить данные из XML-файла в базу данных SQL server
Привет, разработчики, у меня есть сложный XML-файл, который должен быть проанализирован в службе Windows и заполнен данными в базе данных SQL Server.Кто-нибудь может подсказать мне, как выполнить эту задачу, и мне нужна ссылка с образцом примера с кодом C# для разбора XML-файла в службе Windows и импорта данных в БД с подключением SQL Server.Мой пример XML-файла приведен ниже.
<pre><?xml version="1.0"?> <!-- MAS Release 7.0 ( build: Jan 22 2010 19:12:10 ) --> -<AMRDEF CreationTime="2013-08-09 00:18:42" version="7.0" Purpose="AMRDataRequest"> -<MeterReadings Purpose="OnRequestRead" CollectionTime="2013-08-09 19:57:11" Initiator="OnRequest" SourceIrn="30" SourceName="coll_0591_stuart" Source="Remote" Irn="21"> <Meter MediaType="900 MHz" ObservesDaylightSavings="true" TimeZoneOffset="300" Timezone="(GMT-05:00) Eastern Time (US & Canada)" TimeZoneIndex="11" Location="" SdpIdent="" AccountName="" AccountIdent="" RemovalDate="" InstallDate="2013-05-01 20:28:09" Description="" MeterType="REX" SerialNumber="03310266" IsActive="true" MeterName="03310266" MeterIrn="21"/> -<ConsumptionData> <ConsumptionSpec Multiplier="1" MeasurementPeriod="EndOfIntervalSnapshot" TouBucket="Total" Direction="Delivered" UOM="kWh"/> <Reading Value="73180" TimeStamp="2013-08-09 00:00:00"/> </ConsumptionData> -<ConsumptionData> <ConsumptionSpec Multiplier="1" MeasurementPeriod="EndOfIntervalSnapshot" TouBucket="Total" Direction="Received" UOM="kWh"/> <Reading Value="0" TimeStamp="2013-08-09 00:00:00"/> </ConsumptionData> -<LoadProfileSummary> <Channel Multiplier="0.1" Direction="Delivered" UOM="kWh" SumOfIntervalValues="155316.3" ReadingRangeEndTimestamp="2013-08-09 00:00:00" ReadingRangeStartTimestamp="2013-08-02 00:00:00" FirstIntervalTimestamp="2013-08-02 00:15:00" NumIntervalsRead="675" IntervalSeconds="900"/> <Channel Multiplier="0.1" Direction="Received" UOM="kWh" SumOfIntervalValues="0" ReadingRangeEndTimestamp="2013-08-09 00:00:00" ReadingRangeStartTimestamp="2013-08-02 00:00:00" FirstIntervalTimestamp="2013-08-02 00:15:00" NumIntervalsRead="675" IntervalSeconds="900"/> </LoadProfileSummary> -<IntervalData> <IntervalSpec Multiplier="0.1" Direction="Delivered" UOM="kWh" TimestampEnd="2013-08-09 00:00:00" TimestampStart="2013-08-02 00:15:00" Channel="1" Interval="15"/> -<Reading TimeStamp="2013-08-02 00:15:00" RawReading="229.8"> <QualityFlags TestMode="1"/> </Reading> -<Reading TimeStamp="2013-08-02 00:30:00" RawReading="999999"> <QualityFlags TestMode="1" PulseOverflow="1"/> </Reading> -<Reading TimeStamp="2013-08-02 00:45:00" RawReading="999999"> <QualityFlags TestMode="1" PulseOverflow="1"/> </Reading> -<Reading TimeStamp="2013-08-02 01:00:00" RawReading="999999"> <QualityFlags TestMode="1" PulseOverflow="1"/> </Reading> -<Reading TimeStamp="2013-08-02 01:15:00" RawReading="999999"> <QualityFlags TestMode="1" PulseOverflow="1"/> </Reading> -<Reading TimeStamp="2013-08-02 01:30:00" RawReading="228.99"> <QualityFlags TestMode="1" PulseOverflow="1"/> </Reading> <Reading TimeStamp="2013-08-02 01:45:00" RawReading="230.2"/> <Reading TimeStamp="2013-08-02 02:00:00" RawReading="230.3"/> <!--<Reading TimeStamp="2013-08-02 02:15:00" RawReading="229.9" /> <Reading TimeStamp="2013-08-02 02:30:00" RawReading="230.3" /> <Reading TimeStamp="2013-08-02 02:45:00" RawReading="229.9" />--> <Reading TimeStamp="2013-08-02 03:00:00" RawReading="230.3"/> <Reading TimeStamp="2013-08-02 03:15:00" RawReading="229.9"/> <Reading TimeStamp="2013-08-02 03:30:00" RawReading="230.3"/> <Reading TimeStamp="2013-08-02 03:45:00" RawReading="229.9"/> <Reading TimeStamp="2013-08-02 04:00:00" RawReading="230.4"/> <Reading TimeStamp="2013-08-02 04:15:00" RawReading="229.8"/> <Reading TimeStamp="2013-08-02 04:30:00" RawReading="230.1"/>.
Что я уже пробовал:
Я не могу получить правильные ссылки на эту задачу.