Если вы знаете, что понимаете под своим логином XML
, вы можете создать модель и Deserialize
их, и получить данные для вставки Database
.
Предложения:
- Создание модели для десериализации.
- Прямое извлечение данных из вашего XML.
Первый подход:
Представьте, что это ваша модель:
[Serializable()]
public class Car
{
[System.Xml.Serialization.XmlElementAttribute("StockNumber")]
public string StockNumber{ get; set; }
[System.Xml.Serialization.XmlElementAttribute("Make")]
public string Make{ get; set; }
[System.Xml.Serialization.XmlElementAttribute("Model")]
public string Model{ get; set; }
}
и десериализация вашего XML с использованием этого кода:
CarCollection cars = null;
string path = "cars.xml";
XmlSerializer serializer = new XmlSerializer(typeof(CarCollection));
StreamReader reader = new StreamReader(path);
cars = (CarCollection)serializer.Deserialize(reader);
reader.Close();
Теперь у вас есть модель с данными XML
.
Второй подход:
Этот код может быть полезен для Read
данных из XMl
кода:
public List<DataAttr> GetDataAttribute(XDocument xDocument)
{
var dataAttr = new List<DataAttr>();
foreach (var route in xDocument.Descendants("RoutePoints"))
{
foreach (var point in route.Elements())
{
if (point.HasElements)
{
dataAttr.AddRange(_getAttributeValues(point.Attributes()));
}
}
}
return dataAttr;
}
private static IEnumerable<DataAttr> _getAttributeValues(IEnumerable<XAttribute> attributes)
{
return attributes.Select(x => new DataAttr()
{
Name = x.Name.LocalName,
Value = x.Value
});
}
С помощью этого кода вы можете читать данные из XML
и выбирать Nodes
иElements
и Attributes
.