12 Aralık 2008, Cuma
Nasıl XML belge Serisini
Nasıl bu XML belgesi Serisini yapıyorum:
<?xml version="1.0" encoding="utf-8"?>
<Cars>
<Car>
<StockNumber>1020</StockNumber>
<Make>Nissan</Make>
<Model>Sentra</Model>
</Car>
<Car>
<StockNumber>1010</StockNumber>
<Make>Toyota</Make>
<Model>Corolla</Model>
</Car>
<Car>
<StockNumber>1111</StockNumber>
<Make>Honda</Make>
<Model>Accord</Model>
</Car>
</Cars>
Bu var:
[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; }
}
.
[System.Xml.Serialization.XmlRootAttribute("Cars", Namespace = "", IsNullable = false)]
public class Cars
{
[XmlArrayItem(typeof(Car))]
public Car[] Car { get; set; }
}
.
public class CarSerializer
{
public Cars Deserialize()
{
Cars[] cars = null;
string path = HttpContext.Current.ApplicationInstance.Server.MapPath("~/App_Data/") "cars.xml";
XmlSerializer serializer = new XmlSerializer(typeof(Cars[]));
StreamReader reader = new StreamReader(path);
reader.ReadToEnd();
cars = (Cars[])serializer.Deserialize(reader);
reader.Close();
return cars;
}
}
işe gelmiyor :-(
CEVAP
12 Aralık 2008, Cuma
Nasıl sadece bir xml dosyasına kaydedin ve xsd kullan?
- Dosyayı diske (foo.xml ismini yaz)
- Bu annotation oluştur:
xsd foo.xml
- C oluşturmak#:
xsd foo.xsd /classes
Et voila - ve C# XmlSerializer
üzerinden veri okumak mümkün olmalıdır bu kodu dosya:
XmlSerializer ser = new XmlSerializer(typeof(Cars));
Cars cars;
using (XmlReader reader = XmlReader.Create(path))
{
cars = (Cars) ser.Deserialize(reader);
}
(oluşturulan foo vardır.proje cs)
Bunu Paylaş:
Nasıl ASP.NET basit bir Sözlük&; strin...
Nasıl düzgün S4 sınıfı yuvaları Roxyge...
Nasıl bir belge satırları saymak için?...
Raylar 4: nasıl kullanılır(belge)$.() ...
Nasıl Lateks belge yazı tipini değişti...