Uri Uri Uri Uri Class

定義

URI (Uniform Resource Identifier) のオブジェクト表現を可能にし、URI の一部へ簡単にアクセスできるようにします。Provides an object representation of a uniform resource identifier (URI) and easy access to the parts of the URI.

public ref class Uri : System::Runtime::Serialization::ISerializable
[System.ComponentModel.TypeConverter(typeof(System.UriTypeConverter))]
[System.Serializable]
public class Uri : System.Runtime.Serialization.ISerializable
type Uri = class
    interface ISerializable
Public Class Uri
Implements ISerializable
継承
属性
実装

次の例では、Uri クラスのインスタンスを作成し、それを使用して WebRequest インスタンスを作成します。The following example creates an instance of the Uri class and uses it to create a WebRequest instance.

Uri^ siteUri = gcnew Uri( "http://www.contoso.com/" );
WebRequest^ wr = WebRequest::Create( siteUri );
Uri siteUri = new Uri("http://www.contoso.com/");
 
WebRequest wr = WebRequest.Create(siteUri);

Dim siteUri As New Uri("http://www.contoso.com/")
        
Dim wr As WebRequest = WebRequest.Create(siteUri)

注釈

URI は、イントラネットまたはインターネット上のアプリケーションで使用できるリソースをコンパクトに表現したものです。A URI is a compact representation of a resource available to your application on the intranet or Internet. @No__t-0 クラスは、解析、比較、結合など、Uri を処理するためのプロパティとメソッドを定義します。The Uri class defines the properties and methods for handling URIs, including parsing, comparing, and combining. @No__t-0 クラスのプロパティは読み取り専用です。変更可能なオブジェクトを作成するには、UriBuilder クラスを使用します。The Uri class properties are read-only; to create a modifiable object, use the UriBuilder class.

相対 Uri (たとえば、"/new/index.htm") は、絶対 URI になるようにベース URI に対して展開する必要があります。Relative URIs (for example, "/new/index.htm") must be expanded with respect to a base URI so that they are absolute. 必要に応じて絶対 Uri を相対 Uri に変換するために、MakeRelative メソッドが用意されています。The MakeRelative method is provided to convert absolute URIs to relative URIs when necessary.

文字列がスキーム識別子を含む整形式の URI である場合、Uri コンストラクターは URI 文字列をエスケープしません。The Uri constructors do not escape URI strings if the string is a well-formed URI including a scheme identifier.

@No__t-0 のプロパティは、エスケープされたエンコードで正規のデータ表現を返します。 Unicode 値が127より大きいすべての文字は、対応する16進数に置き換えられます。The Uri properties return a canonical data representation in escaped encoding, with all characters with Unicode values greater than 127 replaced with their hexadecimal equivalents. URI を正規の形式で配置するために、@no__t 0 のコンストラクターは次の手順を実行します。To put the URI in canonical form, the Uri constructor performs the following steps:

  • URI スキームを小文字に変換します。Converts the URI scheme to lowercase.

  • ホスト名を小文字に変換します。Converts the host name to lowercase.

  • ホスト名が IPv6 アドレスである場合は、正規の IPv6 アドレスが使用されます。If the host name is an IPv6 address, the canonical IPv6 address is used. ScopeId とその他のオプションの IPv6 データは削除されます。ScopeId and other optional IPv6 data are removed.

  • 既定のポート番号と空のポート番号を削除します。Removes default and empty port numbers.

  • File://スキームを使用しない暗黙のファイルパス (たとえば、"C:\my\file") を、file://スキームを持つ明示的なファイルパスに変換します。Converts implicit file paths without the file:// scheme (for example, "C:\my\file") to explicit file paths with the file:// scheme.

  • 予約済みの目的がないエスケープ文字 (パーセントエンコードオクテット) は、デコードされます (エスケープ解除とも呼ばれます)。Escaped characters (also known as percent-encoded octets) that don't have a reserved purpose are decoded (also known as being unescaped). 予約されていない文字には、大文字と小文字 (% 41-% 5A と% 61-% 7A)、10進数 (% 30-% 39)、ハイフン (% 2D)、ピリオド (% 2E)、アンダースコア (% 5F ()、およびチルダ (% 7E) があります。These unreserved characters include uppercase and lowercase letters (%41-%5A and %61-%7A), decimal digits (%30-%39), hyphen (%2D), period (%2E), underscore (%5F), and tilde (%7E).

  • /./、/. などのシーケンスを圧縮することにより、階層 Uri のパスを Canonicalizes します。/、および//(シーケンスがエスケープされているかどうか)。Canonicalizes the path for hierarchical URIs by compacting sequences such as /./, /../, and // (whether or not the sequence is escaped). これらのシーケンスを圧縮しないスキームがいくつかあることに注意してください。Note that there are some schemes for which these sequences are not compacted.

  • 階層 Uri の場合、ホストがスラッシュ (/) で終了していない場合は、追加されます。For hierarchical URIs, if the host is not terminated with a forward slash (/), one is added.

  • 既定では、URI 内の予約文字は、RFC 2396 に従ってエスケープされます。By default, any reserved characters in the URI are escaped in accordance with RFC 2396. この動作は、国際リソース識別子または国際ドメイン名の解析が有効になっている場合に変更されます。この場合、URI 内の予約文字は、RFC 3986 および RFC 3987 に従ってエスケープされます。This behavior changes if International Resource Identifiers or International Domain Name parsing is enabled in which case reserved characters in the URI are escaped in accordance with RFC 3986 and RFC 3987.

一部のスキームのコンストラクターでの正規化の一部として、ドットセグメントと空のセグメント (/./、/../、および//) は圧縮されます (つまり、削除されます)。As part of canonicalization in the constructor for some schemes, dot-segments and empty segments (/./, /../, and //) are compacted (in other words, they are removed). URI によってこれらのシーケンスが圧縮されるスキームには、http、https、tcp、net.pipe、net.tcp などがあります。The schemes for which URI will compact these sequences include http, https, tcp, net.pipe, and net.tcp. 他のスキームでは、これらのシーケンスは圧縮されません。For some other schemes, these sequences are not compacted. ここでは、この圧縮が実際にどのように行われるかを説明します。Here's how this compacting looks in practice.

var uri = new Uri("http://myUrl/../.."); // http scheme, unescaped
OR
var uri = new Uri("http://myUrl/%2E%2E/%2E%2E"); // http scheme, escaped
OR
var uri = new Uri("ftp://myUrl/../.."); // ftp scheme, unescaped
OR
var uri = new Uri("ftp://myUrl/%2E%2E/%2E%2E"); // ftp scheme, escaped

Console.WriteLine(uri.AbsoluteUri);  
Console.WriteLine(uri.PathAndQuery);  

このコードが実行されると、次の出力が返されます。エスケープシーケンスは、必要に応じてエスケープ解除され、圧縮されます。When this code is executed, it returns the following output, with the escaped sequences unescaped if necessary and then compacted.

http://myUrl/  
/  

@No__t-1 メソッドを使用して、Uri クラスの内容を、エスケープエンコードされた URI 参照から読み取り可能な URI 参照に変換できます。You can transform the contents of the Uri class from an escape encoded URI reference to a readable URI reference by using the ToString method. 一部の予約文字は、ToString メソッドの出力でエスケープされる場合があることに注意してください。Note that some reserved characters might still be escaped in the output of the ToString method. これは、ToString によって返される値からの URI の明確な再構築をサポートするためのものです。This is to support unambiguous reconstruction of a URI from the value returned by ToString.

一部の Uri には、フラグメント識別子、クエリ、またはその両方が含まれます。Some URIs include a fragment identifier or a query or both. フラグメント識別子は、シャープ記号 (#) の後に続く任意のテキストです。シャープ記号は含まれません。フラグメントテキストは、Fragment プロパティに格納されます。A fragment identifier is any text that follows a number sign (#), not including the number sign; the fragment text is stored in the Fragment property. クエリ情報は、URI 内の疑問符 (?) に続くテキストです。クエリテキストは、Query プロパティに格納されます。Query information is any text that follows a question mark (?) in the URI; the query text is stored in the Query property.

.NET Framework バージョン1.1 では、コンストラクターに指定された文字列に不明なスキームと "c: \" が含まれている場合、Uri クラスはコロンの後に "//" を挿入します。In the .NET Framework version 1.1, if the string specified to a constructor contains an unknown scheme and "c:\", the Uri class inserts "//" after the colon. たとえば、URI xyz:c:\abcxyz://c:/abc に変換されます。For example, the URI xyz:c:\abc is converted to xyz://c:/abc. .NET Framework バージョン2.0 では、この動作は削除されており、文字列の例は xyz:c:/abc に変換されます。In the .NET Framework version 2.0, this behavior has been removed, and the example string is converted to xyz:c:/abc.

注意

URI クラスでは、IPv4 プロトコルには4進表記、IPv6 プロトコルにはコロン16進数の両方で IP アドレスを使用できます。The URI class supports the use of IP addresses in both quad-notation for IPv4 protocol and colon-hexadecimal for IPv6 protocol. IPv6 アドレスは、http://[:: 1] のように角かっこで囲むことを忘れないでください。Remember to enclose the IPv6 address in square brackets, as in http://[::1].

国際化リソース識別子のサポートInternational Resource Identifier Support

通常、Web アドレスは、非常に制限された文字のセットで構成される uniform resource identifier を使用して表現されます。Web addresses are typically expressed using uniform resource identifiers that consist of a very restricted set of characters:

  • 英文字の大文字と小文字の ASCII 文字。Upper and lower case ASCII letters from the English alphabet.

  • 0 から 9 の数字。Digits from 0 to 9.

  • その他の少数の ASCII シンボル。A small number of other ASCII symbols.

Uri の仕様は、インターネット技術標準化委員会 (IETF) によって発行された rfc 2396、RFC 2732、RFC 3986、RFC 3987 に記載されています。The specifications for URIs are documented in RFC 2396, RFC 2732, RFC 3986, and RFC 3987 published by the Internet Engineering Task Force (IETF).

インターネットの成長により、英語以外の言語を使用するリソースを識別する必要性が高まっています。With the growth of the Internet, there is a growing need to identify resources using languages other than English. このニーズに対応し、非 ASCII 文字 (Unicode/ISO 10646 の文字セット内の文字) を許可する識別子が、International Resource Identifier (IRI) として知られています。Identifiers which facilitate this need and allow non-ASCII characters (characters in the Unicode/ISO 10646 character set) are known as International Resource Identifiers (IRIs). IRI の仕様は、IETF によって発行された RFC 3987 で規定されています。The specifications for IRIs are documented in RFC 3987 published by IETF. IRI を使用すると、URL に Unicode 文字を含めることができます。Using IRIs allows a URL to contain Unicode characters.

既存の Uri クラスは .NET Framework version 3.5、3.0 SP1、および 2.0 SP1 で拡張されており、RFC 3987 に基づく IRI サポートを提供しています。The existing Uri class has been extended in .NET Framework v3.5, 3.0 SP1, and 2.0 SP1 to provide IRI support based on RFC 3987. バージョン4.5 より前の .NET Framework バージョンのユーザーには、IRI を明示的に有効にしない限り、.NET Framework 2.0 の動作からの変更は表示されません。Users of .NET Framework versions before version 4.5 will not see any change from the .NET Framework 2.0 behavior unless they specifically enable IRI. これにより、.NET Framework の以前のバージョンとのアプリケーションの互換性を保証します。This ensures application compatibility with prior versions of the .NET Framework.

IRI のサポートを有効にするには、次の変更が必要です。To enable support for IRI, the following change is required:

  • 国際化ドメイン名 (IDN) の解析をドメイン名に適用するかどうか、および IRI 解析規則を適用するかどうかを指定します。Specify whether you want Internationalized Domain Name (IDN) parsing applied to the domain name and whether IRI parsing rules should be applied. これは 、machine.config ファイルまたは app.config ファイルで行うことができます。This can be done in the machine.config or in the app.config file. たとえば、次のように追加します。For example, add the following:

    <configuration>  
      <uri>  
      <idn enabled="All" />  
      <iriParsing enabled="true" />  
      </uri>  
    </configuration>  
    

.NET Framework 4.5 以降のユーザーには、常に IRI が有効になっています。Users of .NET Framework 4.5 and newer always have IRI enabled. IRI 解析は、 .configファイルを使用して変更することはできません。IRI parsing cannot be changed using a .config file.

IDN を有効にすると、ドメイン名に含まれるすべての Unicode のラベルが Punycode のラベルに変換されます。Enabling IDN will convert all Unicode labels in a domain name to their Punycode equivalents. Punycode 名には ASCII 文字のみが含まれ、常に xn-- プレフィックスで始まります。Punycode names contain only ASCII characters and always start with the xn-- prefix. この理由は、ほとんどの DNS サーバーは ASCII 文字しかサポートしていないため、インターネットで既存の DNS サーバーをサポートするためです (RFC 3940 を参照)。The reason for this is to support existing DNS servers on the Internet, since most DNS servers only support ASCII characters (see RFC 3940).

IRI と IDN を有効にすると、Uri.DnsSafeHost プロパティの値に影響します。Enabling IRI and IDN affects the value of the Uri.DnsSafeHost property. IRI と IDN を有効にすると、EqualsOriginalStringGetComponents、および IsWellFormedOriginalString メソッドの動作を変更することもできます。Enabling IRI and IDN can also change the behavior of the Equals, OriginalString, GetComponents, and IsWellFormedOriginalString methods.

IDN には、使用する DNS サーバーに応じて、次の3つの値を指定できます。There are three possible values for IDN depending on the DNS servers that are used:

  • idn enabled = すべてidn enabled = All

    この値は、Unicode のドメイン名があれば、それを等価の Punycode (IDN 名) に変換します。This value will convert any Unicode domain names to their Punycode equivalents (IDN names).

  • idn enabled = AllExceptIntranetidn enabled = AllExceptIntranet

    この値を指定すると、ローカルイントラネット上にないすべての Unicode ドメイン名が、Punycode に相当する (IDN 名) を使用するように変換されます。This value will convert all Unicode domain names not on the local Intranet to use the Punycode equivalents (IDN names). この場合は、イントラネットで使用される DNS サーバーが Unicode 名前解決をサポートする必要があります。In this case to handle international names on the local Intranet, the DNS servers that are used for the Intranet should support Unicode name resolution.

  • idn enabled = なしidn enabled = None

    この値は、どの Unicode のドメイン名も、Punycode を使用するように変換しません。This value will not convert any Unicode domain names to use Punycode. これは、.NET Framework 2.0 の動作と一貫性のある既定値です。This is the default value which is consistent with the .NET Framework 2.0 behaviour.

IRI 解析が有効になっている場合 (iriParsing が有効 = true)、RFC 3986 および RFC 3987 の最新の IRI 規則に従って、正規化と文字チェックが実行されます。When IRI parsing is enabled (iriParsing enabled = true) normalization and character checking are done according to the latest IRI rules in RFC 3986 and RFC 3987. IRI 解析が無効になっている場合は、RFC 2396 および RFC 2732 (IPv6 リテラルの場合) に従って、正規化と文字チェックが実行されます。When IRI parsing is disabled, normalization and character checking are performed according to RFC 2396 and RFC 2732 (for IPv6 literals). バージョン4.5 より前の .NET Framework のバージョンでは、既定値は false です。In versions of the .NET Framework before version 4.5, the default value is false. .NET Framework バージョン4.5 以降では、既定値は 0 @no__t、IRI 解析の有効な状態を .configファイルの設定で変更することはできません。In .NET Framework version 4.5 and newer, the default value is true, and the enabled state of IRI parsing cannot be modified by settings in a .config file.

@No__t-0 クラスでの IRI および IDN 処理は、System.Configuration.IriParsingElementSystem.Configuration.IdnElement、および @no__t 構成設定クラスを使用して制御することもできます。IRI and IDN processing in the Uri class can also be controlled using the System.Configuration.IriParsingElement, System.Configuration.IdnElement, and System.Configuration.UriSection configuration setting classes. System.Configuration.IriParsingElement 設定は、Uri クラスでの IRI 処理を有効または無効にします。The System.Configuration.IriParsingElement setting enables or disables IRI processing in the Uri class. System.Configuration.IdnElement 設定は、Uri クラスでの IDN 処理を有効または無効にします。The System.Configuration.IdnElement setting enables or disables IDN processing in the Uri class. System.Configuration.IriParsingElement 設定も間接的に IDN を制御します。The System.Configuration.IriParsingElement setting also indirectly controls IDN. IDN 処理を可能にするためには、IRI 処理を有効にする必要があります。IRI processing must be enabled for IDN processing to be possible. IRI 処理が無効になっている場合、IDN 処理は既定の設定に設定されます。既定の設定では、互換性のために .NET Framework 2.0 の動作が使用され、IDN 名は使用されません。If IRI processing is disabled, then IDN processing will be set to the default setting where the .NET Framework 2.0 behavior is used for compatibility and IDN names are not used.

最初の System.Uri クラスが構築されると、System.Configuration.IriParsingElement および System.Configuration.IdnElement の構成設定が1回読み取られます。The configuration setting for the System.Configuration.IriParsingElement and System.Configuration.IdnElement will be read once when the first System.Uri class is constructed. それ以降の構成設定の変更は無視されます。Changes to configuration settings after that time are ignored.

IRI と IDN をサポートするカスタマイズ可能なパーサーを作成できるように、System.GenericUriParser クラスも拡張されています。The System.GenericUriParser class has also been extended to allow creating a customizable parser that supports IRI and IDN. System.GenericUriParser オブジェクトの動作は、System.GenericUriParserOptions 列挙型で使用可能な値のビットごとの組み合わせを System.GenericUriParser コンストラクターに渡すことによって指定されます。The behavior of a System.GenericUriParser object is specified by passing a bitwise combination of the values available in the System.GenericUriParserOptions enumeration to the System.GenericUriParser constructor. GenericUriParserOptions.IriParsing 型は、パーサーが International Resource Identifiers (IRI) の RFC 3987 で規定された解析規則をサポートしていることを示します。The GenericUriParserOptions.IriParsing type indicates the parser supports the parsing rules specified in RFC 3987 for International Resource Identifiers (IRI). IRI が使用されているかどうかは、前に説明した構成値によって決まります。Whether IRI is used is dictated by the configuration values previously discussed.

GenericUriParserOptions.Idn 型は、パーサーがホスト名の国際化ドメイン名 (IDN) の解析をサポートしていることを示します。The GenericUriParserOptions.Idn type indicates the parser supports Internationalized Domain Name (IDN) parsing (IDN) of host names. IDN が使用されているかどうかは、前に説明した構成値によって決まります。Whether IDN is used is dictated by the configuration values previously discussed.

暗黙的なファイルパスのサポートImplicit File Path Support

Uri は、ローカルファイルシステムのパスを表すためにも使用できます。Uri can also be used to represent local file system paths. これらのパスは、file://スキームで始まる Uri で明示的に表すことができ、file://スキームを持たない uri で暗黙的に表すことができます。These paths can be represented explicitly in URIs that begin with the file:// scheme, and implicitly in URIs that do not have the file:// scheme. 具体的な例として、次の2つの Uri は両方とも有効で、は同じファイルパスを表します。As a concrete example, the following two URIs are both valid, and represent the same file path:

Uri uri1 = new Uri("C:/test/path/file.txt") // Implicit file path.
Uri uri2 = new Uri("file:///C:/test/path/file.txt") // Explicit file path.

これらの暗黙的なファイルパスは URI 仕様に準拠していないため、可能な限り回避する必要があります。These implicit file paths are not compliant with the URI specification and so should be avoided when possible. Unix ベースのシステムで .NET Core を使用する場合、暗黙的なファイルパスは特に問題になることがあります。これは、暗黙的な絶対ファイルパスが相対パスと区別できないためです。When using .NET Core on Unix-based systems, implicit file paths can be especially problematic, because an absolute implicit file path is indistinguishable from a relative path. このようなあいまいさが存在する場合は、絶対 URI としてパスを解釈するように既定で Uri にします。When such ambiguity is present, Uri default to interpreting the path as an absolute URI.

パフォーマンスに関する考慮事項Performance Considerations

アプリケーションを初期化するために Uri を含む * Web.config * ファイルを使用する場合、スキーム識別子が非標準である場合は、Uri を処理するために追加の時間が必要になります。If you use a *Web.config *file that contains URIs to initialize your application, additional time is required to process the URIs if their scheme identifiers are nonstandard. このような場合は、開始時ではなく、Uri が必要になったときに、アプリケーションの影響を受ける部分を初期化します。In such a case, initialize the affected parts of your application when the URIs are needed, not at start time.

注意 (呼び出し元)

セキュリティ上の問題により、アプリケーションは、信頼されていないソースから @no__t 0 のインスタンスを受け入れ、dontEscapetrue に設定した場合には注意が必要です。@No__t-3 メソッドを呼び出すことで、URI 文字列が有効かどうかを確認できます。Because of security concerns, your application should use caution when accepting Uri instances from untrusted sources and with dontEscape set to true.You can check a URI string for validity by calling the IsWellFormedOriginalString() method.

コンストラクター

Uri(SerializationInfo, StreamingContext) Uri(SerializationInfo, StreamingContext) Uri(SerializationInfo, StreamingContext) Uri(SerializationInfo, StreamingContext)

SerializationInfo クラスと StreamingContext クラスの指定したインスタンスから、Uri クラスの新しいインスタンスを初期化します。Initializes a new instance of the Uri class from the specified instances of the SerializationInfo and StreamingContext classes.

Uri(String) Uri(String) Uri(String) Uri(String)

指定した URI を使用して、Uri クラスの新しいインスタンスを初期化します。Initializes a new instance of the Uri class with the specified URI.

Uri(String, Boolean) Uri(String, Boolean) Uri(String, Boolean) Uri(String, Boolean)

指定した URI を使用し、明示的な文字エスケープ制御を使用して、Uri クラスの新しいインスタンスを初期化します。Initializes a new instance of the Uri class with the specified URI, with explicit control of character escaping.

Uri(String, UriKind) Uri(String, UriKind) Uri(String, UriKind) Uri(String, UriKind)

指定した URI を使用して、Uri クラスの新しいインスタンスを初期化します。Initializes a new instance of the Uri class with the specified URI. このコンストラクターでは、URI 文字列を相対 URI、絶対 URI、または不確定のいずれかに指定できます。This constructor allows you to specify if the URI string is a relative URI, absolute URI, or is indeterminate.

Uri(Uri, String) Uri(Uri, String) Uri(Uri, String) Uri(Uri, String)

指定したベース URI と相対 URI 文字列に基づいて、Uri クラスの新しいインスタンスを初期化します。Initializes a new instance of the Uri class based on the specified base URI and relative URI string.

Uri(Uri, String, Boolean) Uri(Uri, String, Boolean) Uri(Uri, String, Boolean) Uri(Uri, String, Boolean)

明示的な文字エスケープ制御を使用し、指定したベース URI と相対 URI に基づいて、Uri クラスの新しいインスタンスを初期化します。Initializes a new instance of the Uri class based on the specified base and relative URIs, with explicit control of character escaping.

Uri(Uri, Uri) Uri(Uri, Uri) Uri(Uri, Uri) Uri(Uri, Uri)

指定したベース Uri のインスタンスと相対 Uri のインスタンスの組み合わせに基づいて、Uri クラスの新しいインスタンスを初期化します。Initializes a new instance of the Uri class based on the combination of a specified base Uri instance and a relative Uri instance.

フィールド

SchemeDelimiter SchemeDelimiter SchemeDelimiter SchemeDelimiter

URI のアドレス部分と通信プロトコル スキームを区切る文字を指定します。Specifies the characters that separate the communication protocol scheme from the address portion of the URI. このフィールドは読み取り専用です。This field is read-only.

UriSchemeFile UriSchemeFile UriSchemeFile UriSchemeFile

URI がファイルを指すポインターであることを指定します。Specifies that the URI is a pointer to a file. このフィールドは読み取り専用です。This field is read-only.

UriSchemeFtp UriSchemeFtp UriSchemeFtp UriSchemeFtp

ファイル転送プロトコル (FTP: File Transfer Protocol) 経由で URI にアクセスすることを指定します。Specifies that the URI is accessed through the File Transfer Protocol (FTP). このフィールドは読み取り専用です。This field is read-only.

UriSchemeGopher UriSchemeGopher UriSchemeGopher UriSchemeGopher

Gopher プロトコル経由で URI にアクセスすることを指定します。Specifies that the URI is accessed through the Gopher protocol. このフィールドは読み取り専用です。This field is read-only.

UriSchemeHttp UriSchemeHttp UriSchemeHttp UriSchemeHttp

HTTP (Hypertext Transfer Protocol) 経由で URI にアクセスすることを指定します。Specifies that the URI is accessed through the Hypertext Transfer Protocol (HTTP). このフィールドは読み取り専用です。This field is read-only.

UriSchemeHttps UriSchemeHttps UriSchemeHttps UriSchemeHttps

HTTPS (Secure Hypertext Transfer Protocol) 経由で URI にアクセスすることを指定します。Specifies that the URI is accessed through the Secure Hypertext Transfer Protocol (HTTPS). このフィールドは読み取り専用です。This field is read-only.

UriSchemeMailto UriSchemeMailto UriSchemeMailto UriSchemeMailto

URI が電子メール アドレスであり、SMTP (Simple Mail Transport Protocol) 経由でこの URI にアクセスすることを指定します。Specifies that the URI is an email address and is accessed through the Simple Mail Transport Protocol (SMTP). このフィールドは読み取り専用です。This field is read-only.

UriSchemeNetPipe UriSchemeNetPipe UriSchemeNetPipe UriSchemeNetPipe

Windows Communication Foundation (WCF) によって使用される NetPipe スキームを通じて URI にアクセスすることを指定します。Specifies that the URI is accessed through the NetPipe scheme used by Windows Communication Foundation (WCF). このフィールドは読み取り専用です。This field is read-only.

UriSchemeNetTcp UriSchemeNetTcp UriSchemeNetTcp UriSchemeNetTcp

Windows Communication Foundation (WCF) によって使用される NetTcp スキームを通じて URI にアクセスすることを指定します。Specifies that the URI is accessed through the NetTcp scheme used by Windows Communication Foundation (WCF). このフィールドは読み取り専用です。This field is read-only.

UriSchemeNews UriSchemeNews UriSchemeNews UriSchemeNews

URI がインターネット ニュース グループであり、この URI へ NNTP (Network News Transport Protocol) 経由でアクセスすることを指定します。Specifies that the URI is an Internet news group and is accessed through the Network News Transport Protocol (NNTP). このフィールドは読み取り専用です。This field is read-only.

UriSchemeNntp UriSchemeNntp UriSchemeNntp UriSchemeNntp

URI がインターネット ニュース グループであり、この URI へ NNTP (Network News Transport Protocol) 経由でアクセスすることを指定します。Specifies that the URI is an Internet news group and is accessed through the Network News Transport Protocol (NNTP). このフィールドは読み取り専用です。This field is read-only.

プロパティ

AbsolutePath AbsolutePath AbsolutePath AbsolutePath

URI の絶対パスを取得します。Gets the absolute path of the URI.

AbsoluteUri AbsoluteUri AbsoluteUri AbsoluteUri

絶対 URI を取得します。Gets the absolute URI.

Authority Authority Authority Authority

サーバーの DNS (Domain Name System) ホスト名または IP アドレスと、ポート番号を取得します。Gets the Domain Name System (DNS) host name or IP address and the port number for a server.

DnsSafeHost DnsSafeHost DnsSafeHost DnsSafeHost

DNS の解決に安全に使用できるホスト名を、必要に応じてエスケープを解除してから取得します。Gets a host name that, after being unescaped if necessary, is safe to use for DNS resolution.

Fragment Fragment Fragment Fragment

エスケープ URI フラグメントを取得します。Gets the escaped URI fragment.

Host Host Host Host

このインスタンスのホスト構成要素を取得します。Gets the host component of this instance.

HostNameType HostNameType HostNameType HostNameType

URI に指定したホスト名の型を取得します。Gets the type of the host name specified in the URI.

IdnHost IdnHost IdnHost IdnHost

ホストの RFC 3490 準拠国際ドメイン名 (該当する場合には Punycode を使用する)。The RFC 3490 compliant International Domain Name of the host, using Punycode as appropriate. この文字列は、必要に応じてエスケープを解除後、DNS の解決に安全に使用できます。This string, after being unescaped if necessary, is safe to use for DNS resolution.

IsAbsoluteUri IsAbsoluteUri IsAbsoluteUri IsAbsoluteUri

Uri インスタンスが絶対インスタンスであるかどうかの値を取得します。Gets whether the Uri instance is absolute.

IsDefaultPort IsDefaultPort IsDefaultPort IsDefaultPort

URI のポート値が、このスキームの既定のポート値かどうかを示す値を取得します。Gets whether the port value of the URI is the default for this scheme.

IsFile IsFile IsFile IsFile

指定した Uri がファイル URI かどうかを示す値を取得します。Gets a value indicating whether the specified Uri is a file URI.

IsLoopback IsLoopback IsLoopback IsLoopback

指定した Uri がローカル ホストを参照するかどうかを示す値を取得します。Gets whether the specified Uri references the local host.

IsUnc IsUnc IsUnc IsUnc

指定した Uri が UNC (Universal Naming Convention) パスかどうかを示す値を取得します。Gets whether the specified Uri is a universal naming convention (UNC) path.

LocalPath LocalPath LocalPath LocalPath

ローカル オペレーティング システムでのファイル名表現を取得します。Gets a local operating-system representation of a file name.

OriginalString OriginalString OriginalString OriginalString

Uri コンストラクターに渡された元の URI 文字列を取得します。Gets the original URI string that was passed to the Uri constructor.

PathAndQuery PathAndQuery PathAndQuery PathAndQuery

AbsolutePath プロパティと Query プロパティを疑問符 (?) で区切った形式で取得します。Gets the AbsolutePath and Query properties separated by a question mark (?).

Port Port Port Port

この URI のポート番号を取得します。Gets the port number of this URI.

Query Query Query Query

指定した URI に含まれているクエリ情報を取得します。Gets any query information included in the specified URI.

Scheme Scheme Scheme Scheme

この URI のスキーム名を取得します。Gets the scheme name for this URI.

Segments Segments Segments Segments

指定した URI を構成するパス セグメントを格納している配列を取得します。Gets an array containing the path segments that make up the specified URI.

UserEscaped UserEscaped UserEscaped UserEscaped

Uri インスタンスの作成前に、URI 文字列が完全にエスケープされたことを示します。Indicates that the URI string was completely escaped before the Uri instance was created.

UserInfo UserInfo UserInfo UserInfo

指定した URI に関連付けられているユーザー名、パスワードなどのユーザー固有の情報を取得します。Gets the user name, password, or other user-specific information associated with the specified URI.

メソッド

Canonicalize() Canonicalize() Canonicalize() Canonicalize()

内部的に格納された URI を正規形式に変換します。Converts the internally stored URI to canonical form.

CheckHostName(String) CheckHostName(String) CheckHostName(String) CheckHostName(String)

指定したホスト名が有効な DNS 名であるかどうかを判断します。Determines whether the specified host name is a valid DNS name.

CheckSchemeName(String) CheckSchemeName(String) CheckSchemeName(String) CheckSchemeName(String)

指定したスキーム名が有効かどうかを判断します。Determines whether the specified scheme name is valid.

CheckSecurity() CheckSecurity() CheckSecurity() CheckSecurity()

このメソッドを呼び出しても、何も効果はありません。Calling this method has no effect.

Compare(Uri, Uri, UriComponents, UriFormat, StringComparison) Compare(Uri, Uri, UriComponents, UriFormat, StringComparison) Compare(Uri, Uri, UriComponents, UriFormat, StringComparison) Compare(Uri, Uri, UriComponents, UriFormat, StringComparison)

指定した比較規則を使用して、2 つの URI の指定部分を比較します。Compares the specified parts of two URIs using the specified comparison rules.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

2 つの Uri インスタンスを比較し、相互に等価かどうかを判断します。Compares two Uri instances for equality.

Escape() Escape() Escape() Escape()

パス構成要素内の安全でない文字または予約文字を 16 進の文字表現に変換します。Converts any unsafe or reserved characters in the path component to their hexadecimal character representations.

EscapeDataString(String) EscapeDataString(String) EscapeDataString(String) EscapeDataString(String)

文字列をエスケープ表現に変換します。Converts a string to its escaped representation.

EscapeString(String) EscapeString(String) EscapeString(String) EscapeString(String)

文字列をエスケープ表現に変換します。Converts a string to its escaped representation.

EscapeUriString(String) EscapeUriString(String) EscapeUriString(String) EscapeUriString(String)

URI 文字列をエスケープ表現に変換します。Converts a URI string to its escaped representation.

FromHex(Char) FromHex(Char) FromHex(Char) FromHex(Char)

16 進数の数字に対応する 10 進数値を取得します。Gets the decimal value of a hexadecimal digit.

GetComponents(UriComponents, UriFormat) GetComponents(UriComponents, UriFormat) GetComponents(UriComponents, UriFormat) GetComponents(UriComponents, UriFormat)

指定した特殊文字エスケープを使用して、現在のインスタンスの指定した構成要素を取得します。Gets the specified components of the current instance using the specified escaping for special characters.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

URI を処理するためのハッシュ コードを取得します。Gets the hash code for the URI.

GetLeftPart(UriPartial) GetLeftPart(UriPartial) GetLeftPart(UriPartial) GetLeftPart(UriPartial)

Uri インスタンスの指定部分を取得します。Gets the specified portion of a Uri instance.

GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

現在のインスタンスをシリアル化するために必要なデータを返します。Returns the data needed to serialize the current instance.

GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
HexEscape(Char) HexEscape(Char) HexEscape(Char) HexEscape(Char)

指定した文字を等価な 16 進数値に変換します。Converts a specified character into its hexadecimal equivalent.

HexUnescape(String, Int32) HexUnescape(String, Int32) HexUnescape(String, Int32) HexUnescape(String, Int32)

指定した 16 進数文字表現を文字に変換します。Converts a specified hexadecimal representation of a character to the character.

InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
IsBadFileSystemCharacter(Char) IsBadFileSystemCharacter(Char) IsBadFileSystemCharacter(Char) IsBadFileSystemCharacter(Char)

ファイル システム名で文字が無効かどうかの値を取得します。Gets whether a character is invalid in a file system name.

IsBaseOf(Uri) IsBaseOf(Uri) IsBaseOf(Uri) IsBaseOf(Uri)

現在の Uri インスタンスが、指定した Uri インスタンスのベースかどうかを判断します。Determines whether the current Uri instance is a base of the specified Uri instance.

IsExcludedCharacter(Char) IsExcludedCharacter(Char) IsExcludedCharacter(Char) IsExcludedCharacter(Char)

指定した文字をエスケープする必要があるかどうかの値を取得します。Gets whether the specified character should be escaped.

IsHexDigit(Char) IsHexDigit(Char) IsHexDigit(Char) IsHexDigit(Char)

指定した文字が有効な 16 進数の数字かどうかを判断します。Determines whether a specified character is a valid hexadecimal digit.

IsHexEncoding(String, Int32) IsHexEncoding(String, Int32) IsHexEncoding(String, Int32) IsHexEncoding(String, Int32)

文字列内の文字が 16 進エンコードかどうかを判断します。Determines whether a character in a string is hexadecimal encoded.

IsReservedCharacter(Char) IsReservedCharacter(Char) IsReservedCharacter(Char) IsReservedCharacter(Char)

指定した文字が予約済みの文字であるかどうかを示す値を取得します。Gets whether the specified character is a reserved character.

IsWellFormedOriginalString() IsWellFormedOriginalString() IsWellFormedOriginalString() IsWellFormedOriginalString()

この Uri の作成に使用された文字列が正しい形式かどうか、およびこれ以上エスケープする必要がないかどうかを示します。Indicates whether the string used to construct this Uri was well-formed and is not required to be further escaped.

IsWellFormedUriString(String, UriKind) IsWellFormedUriString(String, UriKind) IsWellFormedUriString(String, UriKind) IsWellFormedUriString(String, UriKind)

文字列を使用して 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.

MakeRelative(Uri) MakeRelative(Uri) MakeRelative(Uri) MakeRelative(Uri)

2 つの Uri インスタンスの相違点を判断します。Determines the difference between two Uri instances.

MakeRelativeUri(Uri) MakeRelativeUri(Uri) MakeRelativeUri(Uri) MakeRelativeUri(Uri)

2 つの Uri インスタンスの相違点を判断します。Determines the difference between two Uri instances.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
Parse() Parse() Parse() Parse()

現在のインスタンスの URI を解析し、有効な URI で必要とされるすべての部分が含まれていることを確認します。Parses the URI of the current instance to ensure it contains all the parts required for a valid URI.

ToString() ToString() ToString() ToString()

指定した Uri インスタンスの正規文字列表現を取得します。Gets a canonical string representation for the specified Uri instance.

TryCreate(String, UriKind, Uri) TryCreate(String, UriKind, Uri) TryCreate(String, UriKind, Uri) TryCreate(String, UriKind, Uri)

指定した Uri インスタンスと String を使用して、新しい UriKind を作成します。Creates a new Uri using the specified String instance and a UriKind.

TryCreate(Uri, String, Uri) TryCreate(Uri, String, Uri) TryCreate(Uri, String, Uri) TryCreate(Uri, String, Uri)

指定したベースおよび相対 Uri のインスタンスを使用して、新しい String を作成します。Creates a new Uri using the specified base and relative String instances.

TryCreate(Uri, Uri, Uri) TryCreate(Uri, Uri, Uri) TryCreate(Uri, Uri, Uri) TryCreate(Uri, Uri, Uri)

指定したベースおよび相対 Uri のインスタンスを使用して、新しい Uri を作成します。Creates a new Uri using the specified base and relative Uri instances.

Unescape(String) Unescape(String) Unescape(String) Unescape(String)

エスケープ シーケンスをエスケープ解除された形式に置換することによって、指定した文字列を変換します。Converts the specified string by replacing any escape sequences with their unescaped representation.

UnescapeDataString(String) UnescapeDataString(String) UnescapeDataString(String) UnescapeDataString(String)

文字列をエスケープ解除された表現に変換します。Converts a string to its unescaped representation.

演算子

Equality(Uri, Uri) Equality(Uri, Uri) Equality(Uri, Uri) Equality(Uri, Uri)

2 つの Uri インスタンスの値が同一かどうかを判断します。Determines whether two Uri instances have the same value.

Inequality(Uri, Uri) Inequality(Uri, Uri) Inequality(Uri, Uri) Inequality(Uri, Uri)

2 つの Uri インスタンスの値が同一でないかどうかを判断します。Determines whether two Uri instances do not have the same value.

明示的なインターフェイスの実装

ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext)

現在のインスタンスをシリアル化するために必要なデータを返します。Returns the data needed to serialize the current instance.

適用対象

こちらもご覧ください