StronglyTypedResourceBuilder.VerifyResourceName Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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
, for
itd.) 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.