XmlConvert.EncodeName(String) Yöntem

Tanım

Adı geçerli bir XML adına dönüştürür.

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

Parametreler

name
String

Çevrilecek bir ad.

Döndürülenler

Geçersiz karakterlerin bir kaçış dizesiyle değiştirdiği ad.

Örnekler

Aşağıdaki örnek adları kodlar ve kodunu çözer.

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

Açıklamalar

Bu yöntem, şemaların desteği veya varlığı olmadan XML adlarına eşlenmesi gereken boşluklar veya yarım genişlikli Katakana gibi geçersiz karakterleri çevirir. Geçersiz karakterler kaçış sayısal varlık kodlamalarına çevrilir.

Kaçış karakteri "_" şeklindedir. XML 1.0 belirtimi (dördüncü sürüm) önerisine uymayan tüm XML ad karakterlerinin kaçışı _xHHHH_. SSS dizesi, karakter için en önemli bit birinci sırada dört basamaklı onaltılık UCS-2 kodunun kısaltmasıdır. Örneğin, Sipariş Ayrıntıları adı Order_x0020_Details olarak kodlanır.

Alt çizgi karakteri, alt çizgiyle birlikte adın kodunu çözdüğünüzde kaçış dizisi olarak yanlış yorumlanabilen bir karakter dizisi tarafından izlenmediği sürece kaçış karakterine gerek yoktur. Örneğin, Order_Details kodlanmaz, ancak Order_x0020_ Order_x005f_x0020_ olarak kodlanır. Kısa formlara izin verilmez. Örneğin, _x20_ ve __ formları oluşturulmaz.

Bu yöntem, adın XML belirtimine göre geçerli olmasını garanti eder. Herhangi bir konumda iki nokta üst üste izin verir, yani ad W3C Ad Alanı Belirtimine göre hala geçersiz olabilir. Bunun geçerli bir ad alanı nitelenmiş adı olduğundan emin olmak için ön ek ve yerel ad bölümleri için kullanın EncodeLocalName ve sonucu iki nokta üst üste ile birleştirin.

Şunlara uygulanır

Ayrıca bkz.