1

私の問題は次のとおりです: タイル マップ エディターで作成された xml ファイルを解析したいのですが、1 つの objectlayer (衝突オブジェクト用) を挿入しました。しかし残念なことに、Tiled は xml ファイルのノードに「objectgroup」とその子孫を「object」と名付けました。

<objectgroup name="solidObjects" width="100" height="100">
 <object gid="265" x="16" y="35"/>
 <object gid="265" x="66" y="36"/>
</objectgroup>

私は次のようなことをしようとしています

XDocument doc = XDocument.Load("pathtoFile\sourcefile.xml");
List<Rectangle> objectList = new List<Rectangle>();

foreach (var object in doc.Element("objectgroup").Descendants("object"))
{ objectList.Add(objectRectangle); }

しかし、「オブジェクト」は c# では保護された単語であるため、機能しません。この問題を最も簡単に処理するためのヒントはありますか?

4

1 に答える 1

3

絶対に変数名として使用する必要がある場合(これはお勧めしません)、記号objectを前に付けることができます。@

foreach (var @object in doc.Element("objectgroup").Descendants("object")) {
    objectList.Add(@object);
}

@符号プレフィックスを使用すると、コード内の識別子で予約語を名前として使用できます。

于 2013-03-04T10:09:59.770 に答える