2009-03-08 12 views
0

Eğer bu konu genel bir konu değilse özür dilerim, ancak .NET ve Silverlight temelindeki bazı temel kuralları anlama konusundaki eksikliğim ile ilgili bir sorum var.Auto Silverlight içinde bir sınıf koleksiyonuna XML'yi seri hale getirin mi?

  1. Bir ASP.NET jenerik işleyicisi ben XML çıktısını almak için WebClient nesnesini kullanıyorum, Silverlight içinde XML

  2. dışarı yazıyor:

    ben sadece şu anda temel bir projesi var Scott Gu's excellent tutorial

Ben ha: Scott Gu'nun öğretici geçen, aslında edilmiş örneğin .. aslında bir sınıf koleksiyona XML yüklemek TO XML LINQ örneğini kullandım:

XDocument saleslogdata = XDocument.Parse(e.Result); 

var logrecords = from data in saleslogdata.Descendants("data") 
       where data.Element("logID") != null 
       select new SalesLog 
       { 
        logID = (int)data.Element("logID"), 
        name = (string)data.Element("name"), 
       }; 

grdSalesLog.ItemsSource = logrecords; 

(sadece temel örnek) şöyle sınıftır:

public class SalesLog 
{ 
    public int logID { get; set; } 
    public string name { get; set; } 
} 

ÇOK SORUNU BUNU ISITILMIŞTIR ...

Yukarıdaki örnekteki sınıf oluşturma bileşenini "otomatik olarak oluşturabileceğim" bir yol var mı? Diğer bir deyişle, kaynak XML'e başka 10 sütun eklemem gerekiyorsa, açıkçası benim Silverlight uygulamasına gitmem gerekiyor, yeni alanları birleştirmek için sınıfı genişletmek için yukarıdaki kodu değiştirmeliyim ve tabi ki LINQ'dan XML'e sorgulama sınıfa yeni XML alanları.

Yine, eminim ki burada temel bir şey eksik.

cevap

1

http://mironabramson.com/blog/post/2008/06/Create-you-own-new-Type-and-use-it-on-run-time-(C).aspx numaralı makaleye göz atın.

Çalışma zamanında bir tür ve örnek oluşturmayı açıklar.

Ayrıca, dinamik türleri C# 4.0'da daha kolay hale getireceğini düşünüyorum.

+0

Merhaba, cevabınız için teşekkürler .. mmm C# 4.0 hakkında henüz çok fazla şey okumadım, ancak dinamik türleri hakkında duydum ve ne olduğunu merak ettim! Tek sorun, sağladığınız bağlantının hatalı göründüğü veya yanlış yazılmış olabileceği bağlantıdır? iyi bir okuma geliyor! Cevabınız için teşekkürler! –

+0

[Bunu deneyin] (http://mironabramson.com/blog/post/2008/06/Create-you-own-new-Type-and-use-it-on-run-time- (C) .aspx) – Jordan

İlgili konular