我需要一个建议。我正在Silverlight中开发一些简单的游戏,我需要从XML到List加载级别定义,但我不确定什么是最好的方式来做到这一点。如何从XML加载数据到列表
我的XML看起来像
<Levels>
<Level levelNumber = "1" startingX="2" startingY="2">
<Cells>
<Cell CellType="A" PositionX="0" PositionY="0" />
<Cell CellType="A" PositionX="1" PositionY="0" />
<Cell CellType="A" PositionX="2" PositionY="0" />
<Cell CellType="A" PositionX="3" PositionY="0" />
<Cell CellType="A" PositionX="4" PositionY="0" />
<Cell CellType="A" PositionX="5" PositionY="0" />
<Cell CellType="A" PositionX="0" PositionY="1" />
<Cell CellType="B" PositionX="1" PositionY="1" />
<Cell CellType="B" PositionX="2" PositionY="1" />
<Cell CellType="B" PositionX="3" PositionY="1" />
<Cell CellType="B" PositionX="4" PositionY="1" />
<Cell CellType="B" PositionX="5" PositionY="1" />
<Cell CellType="A" PositionX="1" PositionY="2" />
<Cell CellType="B" PositionX="2" PositionY="2" />
<Cell CellType="B" PositionX="3" PositionY="2" />
<Cell CellType="B" PositionX="4" PositionY="2" />
<Cell CellType="A" PositionX="5" PositionY="2" />
<Cell CellType="A" PositionX="1" PositionY="3" />
<Cell CellType="B" PositionX="2" PositionY="3" />
<Cell CellType="B" PositionX="3" PositionY="3" />
<Cell CellType="B" PositionX="4" PositionY="3" />
<Cell CellType="A" PositionX="4" PositionY="3" />
</Cells>
</Level>
</Levels>
,我需要加载级别列出 我的等级类
public class Level
{
private int levelNumber;
private int startingX;
private int startingY;
public List<Cell> cellList = new List<Cell>();
public int LevelNumber
{
get { return levelNumber; }
set { levelNumber = value; }
}
...
}
能否请您给我一个建议如何做到这一点?
我们是否也应该假设诸如PositionX的值是整数而不是字符串? – AnthonyWJones
非常感谢,该属性是整数,但它使用Convert.ToInt32(l.Attribute(“startingX”)。值),它完全适合我。 – Gabbo
很高兴它的作品。理想情况下,您还需要进行圆顶排序检查,看看该值是否为空以及是否与整数兼容。 – arviman