Udostępnij za pośrednictwem


StronglyTypedResourceBuilder.VerifyResourceName Metoda

Definicja

Generuje prawidłowy ciąg zasobu na podstawie określonego ciągu wejściowego i dostawcy kodu.

public:
 static System::String ^ VerifyResourceName(System::String ^ key, System::CodeDom::Compiler::CodeDomProvider ^ provider);
public static string VerifyResourceName (string key, System.CodeDom.Compiler.CodeDomProvider provider);
public static string? VerifyResourceName (string key, System.CodeDom.Compiler.CodeDomProvider provider);
static member VerifyResourceName : string * System.CodeDom.Compiler.CodeDomProvider -> string
Public Shared Function VerifyResourceName (key As String, provider As CodeDomProvider) As String

Parametry

key
String

Ciąg do weryfikacji i, w razie potrzeby, przekonwertuj na prawidłową nazwę zasobu.

provider
CodeDomProvider

CodeDomProvider Obiekt, który określa język docelowy do użycia.

Zwraca

Prawidłowa nazwa zasobu pochodząca z parametru key . Wszelkie nieprawidłowe tokeny są zastępowane znakiem podkreślenia (_) lub null jeśli ciąg pochodny nadal zawiera nieprawidłowe znaki zgodnie z językiem provider określonym przez parametr .

Wyjątki

key lub provider to null.

Uwagi

key Jeśli parametr jest prawidłowym ciągiem znaków, zwracany jest ten ciąg. key Jeśli parametr jest nieprawidłowym ciągiem lub ciągiem zawierającym nieprawidłowe znaki, VerifyResourceName metoda próbuje wygenerować prawidłowy ciąg na key podstawie parametrów iprovider. Jeśli można wygenerować prawidłowy ciąg, zwracany jest ten ciąg; null w przeciwnym razie jest zwracany.

key Jeśli parametr jest pustym ciągiem (""), zwracany jest ciąg składający się z pojedynczego znaku podkreślenia (_). key Jeśli parametr nie jest pustym ciągiem, VerifyResourceName metoda porównuje każdy znak w ciągu do zestawu nieprawidłowych tokenów na podstawie języka określonego provider przez parametr . Dowolny nieprawidłowy znak w ciągu jest zastępowany znakiem podkreślenia. Znaki, które zostaną zastąpione podkreśleniami, są następujące:

' '(spacja), U+00A0 (niezwiązana spacja), '.' (kropka), ',' (przecinek), ';' (średnik), '|', '~', '@', '#', '%', '^', '&', '*', '+', '-', '/<>', '?', '[', ']', '(', ')', '{', '}', ' (cytat), ' (apostrophe), ':', '!'.

Uwaga

Silnie typizowane zasoby nie zezwalają na używanie słów kluczowych języka (takich jak if, foritd.) jako nazw kluczy zasobów. Jednak System.CodeDom wzorzec projektu umożliwia używanie słów kluczowych języka przez prefiks słowa kluczowego z znakiem podkreślenia. Metoda VerifyResourceName wywołuje metodę CreateValidIdentifier w celu wymuszenia tego projektu. Jeśli na przykład używasz nazwy zasobu, która jest taka sama jak słowo kluczowe języka, na przykład for, nazwa jest wyświetlana jak _for w wygenerowanej silnie typizowanej klasie zasobów.

Dotyczy