XmlConvert.EncodeName(String) Metódus

Definíció

A nevet érvényes XML-névvé alakítja.

public:
 static System::String ^ EncodeName(System::String ^ name);
public static string EncodeName(string name);
public static string? EncodeName(string? name);
static member EncodeName : string -> string
Public Shared Function EncodeName (name As String) As String

Paraméterek

name
String

Lefordítandó név.

Válaszok

Az érvénytelen karaktereket tartalmazó név helyébe egy feloldó sztring lép.

Példák

Az alábbi példa kódolja és dekódolja a neveket.

using System;
using System.IO;
using System.Xml;

public class Sample
{

  public static void Main()
  {

     // Encode and decode a name with spaces.
     string name1 = XmlConvert.EncodeName("Order Detail");
     Console.WriteLine("Encoded name: " + name1);
     Console.WriteLine("Decoded name: " + XmlConvert.DecodeName(name1));

     // Encode and decode a local name.
     string name2 = XmlConvert.EncodeLocalName("a:book");
     Console.WriteLine("Encoded local name: " + name2);
     Console.WriteLine("Decoded local name: " + XmlConvert.DecodeName(name2));
  }
}
Imports System.IO
Imports System.Xml

public class Sample

  public shared sub Main()

     ' Encode and decode a name with spaces.
     Dim name1 as string = XmlConvert.EncodeName("Order Detail")
     Console.WriteLine("Encoded name: " + name1)
     Console.WriteLine("Decoded name: " + XmlConvert.DecodeName(name1))

     ' Encode and decode a local name.
     Dim name2 as string= XmlConvert.EncodeLocalName("a:book")
     Console.WriteLine("Encoded local name: " + name2)
     Console.WriteLine("Decoded local name: " + XmlConvert.DecodeName(name2))

  end sub
end class

Megjegyzések

Ez a metódus érvénytelen karaktereket, például szóközöket vagy félszélességű Katakanát fordít le, amelyeket xml-nevekre kell leképezni a sémák támogatása vagy jelenléte nélkül. Az érvénytelen karaktereket a rendszer feloldott numerikus entitáskódolásokra fordítja le.

A feloldó karakter a "_". Minden olyan XML-név karakter, amely nem felel meg az XML 1.0 specifikációra (negyedik kiadás) vonatkozó javaslatnak , _xHHHH_-ként van megadva. A HHHH sztring a karakter négyjegyű hexadecimális UCS-2 kódját jelöli, amely a legfontosabb bit elsőrendű. A Rendelés részletei nevet például a Order_x0020_Details kódolja.

Az aláhúzásjelet csak akkor kell feloldani, ha egy olyan karaktersorozat követi, amelyet az aláhúzásjellel együtt a név dekódolásakor el lehet tévesen értelmezni. A Order_Details például nincs kódolva, de Order_x0020_ Order_x005f_x0020_. Rövid formázás nem engedélyezett. A _x20_ és a __ űrlapok például nem jönnek létre.

Ez a módszer garantálja, hogy a név az XML-specifikációnak megfelelően érvényes. Lehetővé teszi a kettőspontokat bármilyen pozícióban, ami azt jelenti, hogy a név továbbra is érvénytelen lehet a W3C névtér specifikációja szerint. Annak biztosítása érdekében, hogy érvényes névtér-minősített név legyen az előtag és a helyi névrészek esetében EncodeLocalName , és az eredményt kettősponttal összekapcsolja.

A következőre érvényes:

Lásd még