Arkdaşlar var olan bir xml dosyasından veri çekmek için şöyle bir kod yazabilriiz. AdvantureWorks veritabanın uygun classlar oluşturarak yazmak istersek
public class Customer
{
public string CustomerID { get; set; }
public string CompanyName { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string Region { get; set; }
public string PostalCode { get; set; }
public string Country { get; set; }
public string Phone { get; set; }
public string Fax { get; set; }
public Order[] Orders { get; set; }
}
public class Order
{
public int OrderID { get; set; }
public DateTime OrderDate { get; set; }
public decimal Total { get; set; }
}
public class LinqSamples
{
private List<Customer> customerList;
public List<Customer> GetCustomerList()
{
if (customerList == null)
createLists();
return customerList;
}
private void createLists()
{
// Customer/Order data read into memory from XML file using XLinq:
customerList = (
from e in XDocument.Load("Customers.xml").
Root.Elements("customer")
select new Customer
{
CustomerID = (string)e.Element("id"),
CompanyName = (string)e.Element("name"),
Address = (string)e.Element("address"),
City = (string)e.Element("city"),
Region = (string)e.Element("region"),
PostalCode = (string)e.Element("postalcode"),
Country = (string)e.Element("country"),
Phone = (string)e.Element("phone"),
Fax = (string)e.Element("fax"),
Orders = (
from o in e.Elements("orders").Elements("order")
select new Order
{
OrderID = (int)o.Element("id"),
OrderDate = (DateTime)o.Element("orderdate"),
Total = (decimal)o.Element("total")
})
.ToArray()
})
.ToList();
}
}
}
Ayrıca LinQ ile xml' de CRUD ve xml dosyası oluşturma ve yazma işlemlerini http://onursalkaya.blogspot.com/search/label/LINQ bu makaleden bilgi alabilirsiniz.
Kaynak: msdn.com