StronglyTypedResourceBuilder.VerifyResourceName 方法

定义

根据指定的输入字符串和代码提供程序,生成一个有效的资源字符串。

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

参数

key
String

待验证的字符串,如有必要,则转换为有效的资源名称。

provider
CodeDomProvider

CodeDomProvider 对象,它指定将使用的目标语言。

返回

派生自 key 参数的有效资源名称。 如果根据 provider 参数所指定的语言,派生的字符串仍包含无效字符,所有无效标记都会被下划线 (_) 字符或 null 替代。

例外

keyprovidernull

注解

key如果 参数是有效的字符串字符,则返回该字符串。 key如果 参数是无效字符串或包含无效字符的字符串,该方法VerifyResourceName将尝试基于 keyprovider 参数生成有效的字符串。 如果可以生成有效的字符串,则返回该字符串;否则返回 null

key如果 参数是空字符串 (“”) ,则返回由单个下划线字符 (_) 组成的字符串。 key如果 参数不是空字符串,则VerifyResourceName方法根据 参数指定的provider语言将字符串中的每个字符与一组无效标记进行比较。 字符串中的任何无效字符将替换为下划线字符。 将替换为下划线的字符如下所示:

'' (空格) ,U+00A0 (不间断空格) ,'.' (句点) ,',' (逗号) ,';' (分号) ,'|','~','@','#','%', “^”、“&”、“*”、“+”、“-”、“/”、“\<>”、“?”、“[”、“]”、“ (”、“) ”、“{”、“}”、“”“” (引号) 、“ (撇号) 、”:“和”!”。

注意

强类型资源不允许使用语言关键字 (如 iffor等) 作为资源键名称。 但是,System.CodeDom设计模式允许使用语言关键字,方法是在关键字 (keyword) 前面加上下划线字符。 方法 VerifyResourceName 调用 CreateValidIdentifier 方法以强制实施此设计。 例如,如果使用的资源名称与语言关键字 (keyword) 相同,例如 for,则该名称将在生成的强类型资源类中显示为 。_for

适用于