Frage

Ich bin mit XMLWriter HTML zu erstellen, die gut funktioniert, aber jetzt brauche ich Image-Tag zu legen, aber ich bin nicht in der Lage, das zu tun - es ist immer noch berichtet ich nicht ‚‘ in dem Elementnamen verwenden kann. Bitte Rat hwo, dass zu lösen, danke!

EDIT: Im Grunde genommen, wie im XML-Dokument erstellen, folgt aus:

<img src="path" />
War es hilfreich?

Lösung

Es ist richtig, man kann nicht einen Raum in einem XML-Elemente Namen hat.

Im Fall von der Elementname img ist, dann gibt es ein Attribut mit einem Namen von src und einem Wert von Pfad. So dass Sie nicht einen Raum in Ihrem Elemente Namen benötigen, brauchen Sie nur lieber den Rest davon als Attribut zu machen als zu versuchen, sie alle in dem Elementnamenfeld zu setzen.

Andere Tipps

Nun, es ist absolut richtig - Sie nicht haben einen Platz in einem XML Elementname , oder in der Tat in einem HTML-Element-Namen. Warum denken Sie, Sie es brauchen? Image-Tags haben keine Leerzeichen in dem Elementnamen ...

Sind Sie sicher, dass Sie nicht wollen, um den Raum in einem Attributwert setzen?

Können Sie uns ein Beispiel geben?

EDIT: Okay, also in Ihrem Kommentar wollen Sie so etwas wie:

<img src="path" />

Hier:

  • img ist das -Element name
  • src ist ein Attribut name
  • path ist ein Attributwert

So Sie so etwas wie verwenden würden:

writer.WriteStartElement("img");
writer.WriteAttributeString("src", "path");
// Any extra bits you wanted
writer.WriteEndElement();

Ein Element Namen müssen sehr strenge Regeln folgen. Es muss die folgen weniger dann < unterzeichnen (nach dem NEIN Raum auftreten kann). Dann wird der erste Zeichen kann nicht einen Strich sein, einen Punkt oder ein Nummer (und einige andere). Schließlich den Rest des Namens die Striche oder Punkte können folgendermaßen .

Der Name weiter für XML + Namensräume beschränkt ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top