Uri.IsWellFormedUriString(String, UriKind) Uri.IsWellFormedUriString(String, UriKind) Uri.IsWellFormedUriString(String, UriKind) Method


文字列を使用して URI を作成する際に、文字列の形式が正しいかどうかを示し、文字列をそれ以上エスケープする必要がないことを確認します。Indicates whether the string is well-formed by attempting to construct a URI with the string and ensures that the string does not require further escaping.

 static bool IsWellFormedUriString(System::String ^ uriString, UriKind uriKind);
public static bool IsWellFormedUriString (string uriString, UriKind uriKind);
static member IsWellFormedUriString : string * UriKind -> bool


String String String

Uri の構築に使用される文字列。The string used to attempt to construct a Uri.

UriKind UriKind UriKind

Uri 内の uriString の型。The type of the Uri in uriString.


文字列の形式が正しい場合は true、それ以外の場合は falsetrue if the string was well-formed; otherwise, false.


バージョン 4.5 より前に、のバージョンの .NET で既定では、文字列と見なされます RFC 2396 および RFC 2732 に従って適切な形式。In versions of .NET before version 4.5, by default the string is considered well-formed in accordance with RFC 2396 and RFC 2732. International Resource Identifier (Iri) や国際化ドメイン名 (IDN) 解析が有効になっている場合、文字列は RFC 3986 および RFC 3987 に従って適切な形式と見なされます。If International Resource Identifiers (IRIs) or Internationalized Domain Name (IDN) parsing are enabled, the string is considered well-formed in accordance with RFC 3986 and RFC 3987.

.NET 4.5 以降は、文字列は常と見なされます整形式で RFC 3986 および RFC 3987、かどうか IRI または IDN が有効にします。Beginning in .NET 4.5, strings are always considered well-formed in accordance with RFC 3986 and RFC 3987, whether or not IRI or IDN are enabled. ただし、これはのみ .NET 4.5 を対象とするアプリの場合は true またはそれ以降ことに注意してください。Note, however, that this is only true for apps that target .NET 4.5 or later. .NET 4.0 を対象とするアプリでは、互換コードを起動し、古い (4.5 より前) の動作が発生します。Apps that target .NET 4.0 invoke compatibility code, and experience the old (pre-4.5) behavior.

文字列は不適切に作成された、次の条件のいずれかが発生した場合は false を返すメソッドの原因と見なされます。The string is considered poorly formed, causing the method to return false, if any of the following conditions occur

ErrorError Example
文字列が正しくエスケープされていません。The string is not correctly escaped. http://www.contoso.com/path???/filehttp://www.contoso.com/path???/file name
文字列は、絶対Uri、暗黙的なファイルを表すUriします。The string is an absolute Uri that represents an implicit file Uri. c:\\directory\filenamec:\\directory\filename
文字列は、パスの前にスラッシュが不足している絶対 URI です。The string is an absolute URI that is missing a slash before the path. file://c:/directory/filenamefile://c:/directory/filename
スラッシュとして扱う場合でも、文字列にエスケープされていない円記号が含まれますThe string contains unescaped backslashes even if they will be treated as forward slashes http:\\host/path/filehttp:\\host/path/file
文字列が階層的な絶対パスを表すUri「://」を含んでいませんThe string represents a hierarchical absolute Uri and does not contain "://" www.contoso.com/path/filewww.contoso.com/path/file
パーサー、Scheme元の文字列が整形式がないことを示します。The parser for the Scheme indicates that the original string was not well-formed. この例は、URI のスキームに依存します。The example depends on the scheme of the URI.
以降では、.NET 4.5 では、コロンで相対 Uri (': ')、最初のセグメントでは考慮されません整形します。Beginning with .NET 4.5, relative URIs with a colon (':') in their first segment are not considered well-formed. 2013.05.29_14:33:412013.05.29_14:33:41

IRI サポートの詳細については、「解説」を参照してください、Uriクラス。For more information on IRI support, see the Remarks section for the Uri class.