很抱歉,如果这是通用的,但我有一个问题可能与我对.NET和Silverlight的一些核心基础规则缺乏了解有关。
我目前只有一个基本项目:
ASP.NET通用处理程序写出XML
在Silverlight中,我使用WebClient对象获取XML输出,实际上是我 一直在浏览Scott Gu的教程: Scott Gu's excellent tutorial
我使用LINQ TO XML的示例实际上将XML加载到类集合中。例如:
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;
该课程如下(只是一个基本的例子):
public class SalesLog
{
public int logID { get; set; }
public string name { get; set; }
}
因此我的主要问题是......
有没有办法可以“自动生成”上面例子中的类构建部分。换句话说,如果我需要在源XML中添加另外10列,我显然需要进入我的silverlight应用程序,更改上面的代码以扩展类以包含新字段,当然还有LINQ to XML查询来映射该类的新XML字段。
再次,我相信我在这里错过了一些有趣的东西!
答案 0 :(得分:1)
查看文章http://mironabramson.com/blog/post/2008/06/Create-you-own-new-Type-and-use-it-on-run-time-(C).aspx。
它解释了如何在运行时创建类型和实例。
我猜动态类型会让它在C#4.0中更容易。