Uri コンストラクター

定義

Uri クラスの新しいインスタンスを初期化します。Initializes a new instance of the Uri class.

オーバーロード

Uri(String)

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

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, 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 を使用して、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 文字列に基づいて、Uri クラスの新しいインスタンスを初期化します。Initializes a new instance of the Uri class based on the specified base URI and relative URI string.

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.

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(String)

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

public:
 Uri(System::String ^ uriString);
public Uri (string uriString);
new Uri : string -> Uri
Public Sub New (uriString As String)

パラメーター

uriString
String

Uri インスタンスで表されるリソースを表す文字列。A string that identifies the resource to be represented by the Uri instance. 文字列形式の IPv6 アドレスは、かっこで囲む必要があることに注意してください。Note that an IPv6 address in string form must be enclosed within brackets. たとえば、"http://[2607:f8b0:400d:c06::69]" のようにします。For example, "http://[2607:f8b0:400d:c06::69]".

例外

uriStringnullです。uriString is null.

注意: Windows ストア アプリ用 .NET またはポータブル クラス ライブラリでは、基本クラスの例外である FormatException を代わりにキャッチします。Note: In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, FormatException, instead.

uriString が空です。uriString is empty.

- または --or- uriString に指定されたスキームの形式が正しくありません。The scheme specified in uriString is not correctly formed. 以下を参照してください。CheckSchemeName(String)See CheckSchemeName(String).

- または --or- uriString に含まれるスラッシュが多すぎます。uriString contains too many slashes.

- または --or- uriString に指定されたパスワードは正しくありません。The password specified in uriString is not valid.

- または --or- uriString に指定されたホスト名は正しくありません。The host name specified in uriString is not valid.

- または --or- uriString に指定されたファイル名正しくありません。The file name specified in uriString is not valid.

- または --or- uriString に指定されたユーザー名は正しくありません。The user name specified in uriString is not valid.

- または --or- uriString に指定するホスト名または機関名が円記号で終わっていてはなりません。The host or authority name specified in uriString cannot be terminated by backslashes.

- または --or- uriString に指定されたポート番号が正しくないか、解析できません。The port number specified in uriString is not valid or cannot be parsed.

- または --or- uriString の長さが 65519 文字を超えています。The length of uriString exceeds 65519 characters.

- または --or- uriString に指定されたスキームの長さが 1023 文字を超えています。The length of the scheme specified in uriString exceeds 1023 characters.

- または --or- 正しくない文字シーケンスが uriString に含まれています。There is an invalid character sequence in uriString.

- または --or- uriString に指定する MS-DOS のパスは、c:\\ で始める必要があります。The MS-DOS path specified in uriString must start with c:\\.

次の例では、URI を使用してインスタンスを作成し Uri http://www.contoso.com/ ます。The following example creates a Uri instance with the URI http://www.contoso.com/.

Uri^ baseUri = gcnew Uri( "http://www.contoso.com/" );
Uri myUri = new Uri("http://www.contoso.com/");

Dim myUri As New Uri("http://www.contoso.com/")

注釈

This constructor creates a <xref:System.Uri> instance from a URI string. URI を解析し、正規の形式で格納し、必要なエスケープエンコーディングを行います。It parses the URI, puts it in canonical format, and makes any required escape encodings.

このコンストラクターは、が Uri アクセス可能なリソースを参照しているかどうかを確認しません。This constructor does not ensure that the Uri refers to an accessible resource.

このコンストラクターは、 string パラメーターが絶対 URI を参照し、がに設定されたコンストラクターを呼び出す場合と同じであることを前提としてい Uri UriKind Absolute ます。This constructor assumes that the string parameter references an absolute URI and is equivalent to calling the Uri constructor with UriKind set to Absolute. stringコンストラクターに渡されたパラメーターが相対 URI である場合、このコンストラクターはをスロー UriFormatException します。If the string parameter passed to the constructor is a relative URI, this constructor will throw a UriFormatException.

適用対象

製品 Introduced

Uri(SerializationInfo, StreamingContext)

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

protected:
 Uri(System::Runtime::Serialization::SerializationInfo ^ serializationInfo, System::Runtime::Serialization::StreamingContext streamingContext);
protected Uri (System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
new Uri : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> Uri
Protected Sub New (serializationInfo As SerializationInfo, streamingContext As StreamingContext)

パラメーター

serializationInfo
SerializationInfo

新しい SerializationInfo インスタンスをシリアル化するために必要な情報を格納する Uri クラスのインスタンス。An instance of the SerializationInfo class containing the information required to serialize the new Uri instance.

streamingContext
StreamingContext

新しい StreamingContext インスタンスに関連付けられているシリアル化ストリームのソースを格納する Uri クラスのインスタンス。An instance of the StreamingContext class containing the source of the serialized stream associated with the new Uri instance.

例外

serializationInfo パラメーターには、null URI が格納されます。The serializationInfo parameter contains a null URI.

serializationInfo パラメーターには空の URI が格納されます。The serializationInfo parameter contains a URI that is empty.

- または --or- 指定されたスキームの形式が正しくありません。The scheme specified is not correctly formed. 以下を参照してください。CheckSchemeName(String)See CheckSchemeName(String).

- または --or- URI に含まれているスラッシュが多すぎます。The URI contains too many slashes.

- または --or- URI で指定されたパスワードが無効です。The password specified in the URI is not valid.

- または --or- URI に指定されたホスト名が無効です。The host name specified in URI is not valid.

- または --or- URI に指定されたファイル名が無効です。The file name specified in the URI is not valid.

- または --or- URI で指定されたユーザー名が無効です。The user name specified in the URI is not valid.

- または --or- URI に指定するホスト名または権限名の末尾には、円記号を使用できません。The host or authority name specified in the URI cannot be terminated by backslashes.

- または --or- URI に指定されたポート番号が無効か、解析できません。The port number specified in the URI is not valid or cannot be parsed.

- または --or- URI の長さが 65519 文字を超えています。The length of URI exceeds 65519 characters.

- または --or- URI に指定されたスキームの長さが 1023 文字を超えています。The length of the scheme specified in the URI exceeds 1023 characters.

- または --or- URI に無効な文字シーケンスが含まれています。There is an invalid character sequence in the URI.

- または --or- URI に指定する MS-DOS パスは、c:\\ で始める必要があります。The MS-DOS path specified in the URI must start with c:\\.

注釈

This constructor implements the <xref:System.Runtime.Serialization.ISerializable> interface for the <xref:System.Uri> class.

こちらもご覧ください

適用対象

製品 Introduced

Uri(String, Boolean)

注意事項

The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202

注意事項

The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202

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

public:
 Uri(System::String ^ uriString, bool dontEscape);
public Uri (string uriString, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202")]
public Uri (string uriString, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")]
public Uri (string uriString, bool dontEscape);
new Uri : string * bool -> Uri
[<System.Obsolete("The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202")>]
new Uri : string * bool -> Uri
[<System.Obsolete("The constructor has been deprecated. Please use new Uri(string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")>]
new Uri : string * bool -> Uri
Public Sub New (uriString As String, dontEscape As Boolean)

パラメーター

uriString
String

Uri インスタンスで表されるリソースを表す文字列。A string that identifies the resource to be represented by the Uri instance. 文字列形式の IPv6 アドレスは、かっこで囲む必要があることに注意してください。Note that an IPv6 address in string form must be enclosed within brackets. たとえば、"http://[2607:f8b0:400d:c06::69]" のようにします。For example, "http://[2607:f8b0:400d:c06::69]".

dontEscape
Boolean

uriString が完全にエスケープされている場合は true。それ以外の場合は falsetrue if uriString is completely escaped; otherwise, false.

属性

例外

uriStringnullです。uriString is null.

uriString が空か、空白だけを含んでいます。uriString is empty or contains only spaces.

- または --or- uriString に指定されたスキームが無効です。The scheme specified in uriString is not valid.

- または --or- uriString に含まれるスラッシュが多すぎます。uriString contains too many slashes.

- または --or- uriString に指定されたパスワードは正しくありません。The password specified in uriString is not valid.

- または --or- uriString に指定されたホスト名は正しくありません。The host name specified in uriString is not valid.

- または --or- uriString に指定されたファイル名正しくありません。The file name specified in uriString is not valid.

- または --or- uriString に指定されたユーザー名は正しくありません。The user name specified in uriString is not valid.

- または --or- uriString に指定するホスト名または機関名が円記号で終わっていてはなりません。The host or authority name specified in uriString cannot be terminated by backslashes.

- または --or- uriString に指定されたポート番号が正しくないか、解析できません。The port number specified in uriString is not valid or cannot be parsed.

- または --or- uriString の長さが 65519 文字を超えています。The length of uriString exceeds 65519 characters.

- または --or- uriString に指定されたスキームの長さが 1023 文字を超えています。The length of the scheme specified in uriString exceeds 1023 characters.

- または --or- 正しくない文字シーケンスが uriString に含まれています。There is an invalid character sequence in uriString.

- または --or- uriString に指定する MS-DOS のパスは、c:\\ で始める必要があります。The MS-DOS path specified in uriString must start with c:\\.

次の例では、 Uri URI のインスタンスを作成し http://www.contoso.com/Hello%20World.htm ます。The following example creates a Uri instance for the URI http://www.contoso.com/Hello%20World.htm. 含まれている URI は完全にエスケープされ、正規の形式であるため、 dontEscape パラメーターをに設定でき true ます。Because the contained URI is completely escaped and is in canonical form, the dontEscape parameter can be set to true.

Uri^ myUri = gcnew Uri(  "http://www.contoso.com/Hello%20World.htm",true );
Uri myUri = new Uri("http://www.contoso.com/Hello%20World.htm", true);

Dim myUri As New Uri("http://www.contoso.com/Hello%20World.htm", True)

注釈

This constructor creates a <xref:System.Uri> instance from a URI string. URI を解析し、正規の形式で格納します。It parses the URI and puts it in canonical format.

パラメーターは、 dontEscape 予約文字をエスケープシーケンスに変換するかどうかを制御します。The dontEscape parameter controls whether reserved characters are translated into escape sequences. このパラメーターは true 、URI 内の予約文字がすべてエスケープされていることがわかっている場合にのみに設定する必要があります。This parameter should be set to true only if you are certain that all reserved characters in the URI have been escaped. true完全にエスケープされていない URI に対して値をに設定すると、予期しない動作が発生する可能性があります。Setting the value to true for a URI that has not been completely escaped can cause unexpected behavior. このパラメーターは常にに設定することを強くお勧め false します。It is strongly recommended that you always set this parameter to false.

dontEscapeがに設定されている場合 false 、コンストラクターは、すべてのパーセント (%) が出現するかどうかをチェックすることで予約文字をエスケープします。の後に有効なエスケープシーケンスが続きます。If dontEscape is set to false, the constructor escapes any reserved characters by checking that all occurrences of percent (%) are followed by a valid escape sequence. パーセントの後に続く文字シーケンスが有効でない場合、パーセントは %25 に置き換えられます。If the character sequence following a percent is not valid, the percent is replaced by %25.

このコンストラクターは、が Uri アクセス可能なリソースを参照しているかどうかを確認しません。This constructor does not ensure that the Uri refers to an accessible resource.

適用対象

製品 Introduced

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.

public:
 Uri(System::String ^ uriString, UriKind uriKind);
public Uri (string uriString, UriKind uriKind);
new Uri : string * UriKind -> Uri
Public Sub New (uriString As String, uriKind As UriKind)

パラメーター

uriString
String

Uri インスタンスで表されるリソースを表す文字列。A string that identifies the resource to be represented by the Uri instance. 文字列形式の IPv6 アドレスは、かっこで囲む必要があることに注意してください。Note that an IPv6 address in string form must be enclosed within brackets. たとえば、"http://[2607:f8b0:400d:c06::69]" のようにします。For example, "http://[2607:f8b0:400d:c06::69]".

uriKind
UriKind

URI 文字列が相対 URI、絶対 URI、または不確定のいずれであるかを指定します。Specifies whether the URI string is a relative URI, absolute URI, or is indeterminate.

例外

uriKind が無効です。uriKind is invalid.

uriStringnullです。uriString is null.

注意: Windows ストア アプリ用 .NET またはポータブル クラス ライブラリでは、基本クラスの例外である FormatException を代わりにキャッチします。Note: In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, FormatException, instead.

uriString は相対 URI を格納し、uriKindAbsolute です。uriString contains a relative URI and uriKind is Absolute.

oror uriString は絶対 URI を格納し、uriKindRelative です。uriString contains an absolute URI and uriKind is Relative.

oror uriString が空です。uriString is empty.

- または --or- uriString に指定されたスキームの形式が正しくありません。The scheme specified in uriString is not correctly formed. 以下を参照してください。CheckSchemeName(String)See CheckSchemeName(String).

- または --or- uriString に含まれるスラッシュが多すぎます。uriString contains too many slashes.

- または --or- uriString に指定されたパスワードは正しくありません。The password specified in uriString is not valid.

- または --or- uriString に指定されたホスト名は正しくありません。The host name specified in uriString is not valid.

- または --or- uriString に指定されたファイル名正しくありません。The file name specified in uriString is not valid.

- または --or- uriString に指定されたユーザー名は正しくありません。The user name specified in uriString is not valid.

- または --or- uriString に指定するホスト名または機関名が円記号で終わっていてはなりません。The host or authority name specified in uriString cannot be terminated by backslashes.

- または --or- uriString に指定されたポート番号が正しくないか、解析できません。The port number specified in uriString is not valid or cannot be parsed.

- または --or- uriString の長さが 65519 文字を超えています。The length of uriString exceeds 65519 characters.

- または --or- uriString に指定されたスキームの長さが 1023 文字を超えています。The length of the scheme specified in uriString exceeds 1023 characters.

- または --or- 正しくない文字シーケンスが uriString に含まれています。There is an invalid character sequence in uriString.

- または --or- uriString に指定する MS-DOS のパスは、c:\\ で始める必要があります。The MS-DOS path specified in uriString must start with c:\\.

注釈

Relative and absolute URIs have different restrictions on their format. たとえば、相対 URI には、スキームまたは権限は必要ありません。For example, a relative URI does not require a scheme or an authority. に指定する値は、 uriKind 渡された URI の型と一致している必要があり uriString ます。The value you specify in uriKind must match the type of URI passed in uriString. ただし、が指定されている場合は、 RelativeOrAbsolute URI 文字列を相対パスまたは絶対 URI にすることができます。However, if RelativeOrAbsolute is specified, the URI string can be relative or absolute.

適用対象

製品 Introduced

Uri(Uri, String)

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

public:
 Uri(Uri ^ baseUri, System::String ^ relativeUri);
public Uri (Uri baseUri, string relativeUri);
public Uri (Uri baseUri, string? relativeUri);
new Uri : Uri * string -> Uri
Public Sub New (baseUri As Uri, relativeUri As String)

パラメーター

baseUri
Uri

ベース URI。The base URI.

relativeUri
String

ベース URI に追加する相対 URI。The relative URI to add to the base URI.

例外

baseUrinullです。baseUri is null.

baseUri は絶対 Uri インスタンスではありません。baseUri is not an absolute Uri instance.

注意: Windows ストア アプリ用 .NET またはポータブル クラス ライブラリでは、基本クラスの例外である FormatException を代わりにキャッチします。Note: In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, FormatException, instead.

baseUrirelativeUri を結合して形成された URI が空であるか、スペースのみを含んでいます。The URI formed by combining baseUri and relativeUri is empty or contains only spaces.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたスキームが無効です。The scheme specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI に含まれるスラッシュが多すぎます。The URI formed by combining baseUri and relativeUri contains too many slashes.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたパスワードが無効です。The password specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたホスト名が無効です。The host name specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたファイル名が無効です。The file name specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたユーザー名が無効です。The user name specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたホスト名または機関名が円記号で終わっていてはなりません。The host or authority name specified in the URI formed by combining baseUri and relativeUri cannot be terminated by backslashes.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたポート番号が正しくないか、解析できません。The port number specified in the URI formed by combining baseUri and relativeUri is not valid or cannot be parsed.

- または --or- baseUrirelativeUri を結合して形成される URI の長さが 65519 文字を超えています。The length of the URI formed by combining baseUri and relativeUri exceeds 65519 characters.

- または --or- baseUrirelativeUri を結合して形成される URI で指定されたスキームの長さが 1023 文字を超えています。The length of the scheme specified in the URI formed by combining baseUri and relativeUri exceeds 1023 characters.

- または --or- baseUrirelativeUri を結合して形成された URI に使用できない文字シーケンスがあります。There is an invalid character sequence in the URI formed by combining baseUri and relativeUri.

- または --or- uriString に指定する MS-DOS のパスは、c:\\ で始める必要があります。The MS-DOS path specified in uriString must start with c:\\.

Uri相対 uri とを組み合わせて絶対 uri を形成することによって、クラスの新しいインスタンスを作成する例を次に示し http://www.contoso.com catalog/shownew.htm http://www.contoso.com/catalog/shownew.htm ます。The following example creates a new instance of the Uri class by combining the relative URIs http://www.contoso.com and catalog/shownew.htm to form the absolute URI http://www.contoso.com/catalog/shownew.htm.

Uri^ baseUri = gcnew Uri(  "http://www.contoso.com" );
Uri^ myUri = gcnew Uri( baseUri, "catalog/shownew.htm" );
Console::WriteLine( myUri->ToString() );
Uri baseUri = new Uri("http://www.contoso.com");
 Uri myUri = new Uri(baseUri, "catalog/shownew.htm");

Console.WriteLine(myUri.ToString());
Dim baseUri As New Uri("http://www.contoso.com")
Dim myUri As New Uri(baseUri, "catalog/shownew.htm")

Console.WriteLine(myUri.ToString())

注釈

This constructor creates a <xref:System.Uri> instance by combining the baseUri and the relativeUri. relativeUriが絶対 URI (スキーム、ホスト名、および必要に応じてポート番号を含む) の場合、 Uri インスタンスはのみを使用して作成され relativeUri ます。If relativeUri is an absolute URI (containing a scheme, host name, and optionally a port number), the Uri instance is created using only relativeUri.

baseUri 相対部分 (など) がある場合 /api/api/ の相対部分 baseUri が構築されたで保持される場合は、相対部分をスラッシュ (など) で終了する必要があり Uri ます。If the baseUri has relative parts (like /api), then the relative part must be terminated with a slash, (like /api/), if the relative part of baseUri is to be preserved in the constructed Uri.

さらに、が relativeUri スラッシュで始まる場合は、の相対部分に置き換えられます。 baseUriAdditionally, if the relativeUri begins with a slash, then it will replace any relative part of the baseUri

このコンストラクターは、が Uri アクセス可能なリソースを参照しているかどうかを確認しません。This constructor does not ensure that the Uri refers to an accessible resource.

適用対象

製品 Introduced

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.

public:
 Uri(Uri ^ baseUri, Uri ^ relativeUri);
public Uri (Uri baseUri, Uri relativeUri);
new Uri : Uri * Uri -> Uri
Public Sub New (baseUri As Uri, relativeUri As Uri)

パラメーター

baseUri
Uri

新しい Uri インスタンスのベースとなる絶対 UriAn absolute Uri that is the base for the new Uri instance.

relativeUri
Uri

Uri と組み合わせる相対 baseUri インスタンス。A relative Uri instance that is combined with baseUri.

例外

baseUri は絶対 Uri インスタンスではありません。baseUri is not an absolute Uri instance.

baseUrinullです。baseUri is null.

baseUri は絶対 Uri インスタンスではありません。baseUri is not an absolute Uri instance.

注意: Windows ストア アプリ用 .NET またはポータブル クラス ライブラリでは、基本クラスの例外である FormatException を代わりにキャッチします。Note: In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, FormatException, instead.

baseUrirelativeUri を結合して形成された URI が空であるか、スペースのみを含んでいます。The URI formed by combining baseUri and relativeUri is empty or contains only spaces.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたスキームが無効です。The scheme specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI に含まれるスラッシュが多すぎます。The URI formed by combining baseUri and relativeUri contains too many slashes.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたパスワードが無効です。The password specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたホスト名が無効です。The host name specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたファイル名が無効です。The file name specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたユーザー名が無効です。The user name specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたホスト名または機関名が円記号で終わっていてはなりません。The host or authority name specified in the URI formed by combining baseUri and relativeUri cannot be terminated by backslashes.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたポート番号が正しくないか、解析できません。The port number specified in the URI formed by combining baseUri and relativeUri is not valid or cannot be parsed.

- または --or- baseUrirelativeUri を結合して形成される URI の長さが 65519 文字を超えています。The length of the URI formed by combining baseUri and relativeUri exceeds 65519 characters.

- または --or- baseUrirelativeUri を結合して形成される URI で指定されたスキームの長さが 1023 文字を超えています。The length of the scheme specified in the URI formed by combining baseUri and relativeUri exceeds 1023 characters.

- または --or- baseUrirelativeUri を結合して形成された URI に使用できない文字シーケンスがあります。There is an invalid character sequence in the URI formed by combining baseUri and relativeUri.

- または --or- uriString に指定する MS-DOS のパスは、c:\\ で始める必要があります。The MS-DOS path specified in uriString must start with c:\\.

この例では、 Uri という絶対インスタンスと、相対インスタンスを作成し absoluteUri Uri relativeUri ます。This example creates an absolute Uri instance, absoluteUri, and a relative Uri instance, relativeUri. 次に、 Uri combinedUri この2つのインスタンスから新しいインスタンスが作成されます。A new Uri instance, combinedUri, is then created from these two instances.

// Create an absolute Uri from a string.
String^ addressString1 = "http://www.contoso.com/";
String^ addressString2 = "catalog/shownew.htm?date=today";
Uri^ absoluteUri = gcnew Uri(addressString1);

// Create a relative Uri from a string.  allowRelative = true to allow for 
// creating a relative Uri.
Uri^ relativeUri = gcnew Uri(addressString2);

// Check whether the new Uri is absolute or relative.
if (  !relativeUri->IsAbsoluteUri )
   Console::WriteLine( "{0} is a relative Uri.", relativeUri );

// Create a new Uri from an absolute Uri and a relative Uri.
Uri^ combinedUri = gcnew Uri( absoluteUri,relativeUri );
Console::WriteLine( combinedUri->AbsoluteUri );
// Create an absolute Uri from a string.
Uri absoluteUri = new Uri("http://www.contoso.com/");

// Create a relative Uri from a string.  allowRelative = true to allow for
// creating a relative Uri.
Uri relativeUri = new Uri("/catalog/shownew.htm?date=today", UriKind.Relative);

// Check whether the new Uri is absolute or relative.
if (!relativeUri.IsAbsoluteUri)
    Console.WriteLine("{0} is a relative Uri.", relativeUri);

// Create a new Uri from an absolute Uri and a relative Uri.
Uri combinedUri = new Uri(absoluteUri, relativeUri);
Console.WriteLine(combinedUri.AbsoluteUri);
    ' Create an absolute Uri from a string.
    Dim absoluteUri As New Uri("http://www.contoso.com/")
    
    ' Create a relative Uri from a string.  allowRelative = true to allow for 
    ' creating a relative Uri.
    Dim relativeUri As New Uri("/catalog/shownew.htm?date=today")
    
    ' Check whether the new Uri is absolute or relative.
    If Not relativeUri.IsAbsoluteUri Then
        Console.WriteLine("{0} is a relative Uri.", relativeUri)
    End If 
    ' Create a new Uri from an absolute Uri and a relative Uri.
    Dim combinedUri As New Uri(absoluteUri, relativeUri)
    Console.WriteLine(combinedUri.AbsoluteUri)

End Sub

注釈

This constructor creates a new <xref:System.Uri> instance by combining an absolute <xref:System.Uri> instance, baseUri, with a relative <xref:System.Uri> instance, relativeUri. relativeUriが絶対 Uri インスタンス (スキーム、ホスト名、および必要に応じてポート番号を含む) の場合、 Uri インスタンスはのみを使用して作成され relativeUri ます。If relativeUri is an absolute Uri instance (containing a scheme, host name, and optionally a port number), the Uri instance is created using only relativeUri.

baseUri 相対部分 (など) がある場合 /api/api/ の相対部分 baseUri が構築されたで保持される場合は、相対部分をスラッシュ (など) で終了する必要があり Uri ます。If the baseUri has relative parts (like /api), then the relative part must be terminated with a slash, (like /api/), if the relative part of baseUri is to be preserved in the constructed Uri.

さらに、が relativeUri スラッシュで始まる場合は、の相対部分に置き換えられます。 baseUriAdditionally, if the relativeUri begins with a slash, then it will replace any relative part of the baseUri

このコンストラクターは、が Uri アクセス可能なリソースを参照しているかどうかを確認しません。This constructor does not ensure that the Uri refers to an accessible resource.

適用対象

製品 Introduced

Uri(Uri, String, Boolean)

注意事項

The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202

注意事項

The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202

明示的な文字エスケープ制御を使用し、指定したベース 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.

public:
 Uri(Uri ^ baseUri, System::String ^ relativeUri, bool dontEscape);
public Uri (Uri baseUri, string? relativeUri, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202")]
public Uri (Uri baseUri, string relativeUri, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")]
public Uri (Uri baseUri, string? relativeUri, bool dontEscape);
public Uri (Uri baseUri, string relativeUri, bool dontEscape);
[System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")]
public Uri (Uri baseUri, string relativeUri, bool dontEscape);
new Uri : Uri * string * bool -> Uri
[<System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. http://go.microsoft.com/fwlink/?linkid=14202")>]
new Uri : Uri * string * bool -> Uri
[<System.Obsolete("The constructor has been deprecated. Please new Uri(Uri, string). The dontEscape parameter is deprecated and is always false. https://go.microsoft.com/fwlink/?linkid=14202")>]
new Uri : Uri * string * bool -> Uri
Public Sub New (baseUri As Uri, relativeUri As String, dontEscape As Boolean)

パラメーター

baseUri
Uri

ベース URI。The base URI.

relativeUri
String

ベース URI に追加する相対 URI。The relative URI to add to the base URI.

dontEscape
Boolean

uriString が完全にエスケープされている場合は true。それ以外の場合は falsetrue if uriString is completely escaped; otherwise, false.

属性

例外

baseUrinullです。baseUri is null.

baseUri は絶対 Uri インスタンスではありません。baseUri is not an absolute Uri instance.

baseUrirelativeUri を結合して形成された URI が空であるか、スペースのみを含んでいます。The URI formed by combining baseUri and relativeUri is empty or contains only spaces.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたスキームが無効です。The scheme specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI に含まれるスラッシュが多すぎます。The URI formed by combining baseUri and relativeUri contains too many slashes.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたパスワードが無効です。The password specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたホスト名が無効です。The host name specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたファイル名が無効です。The file name specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたユーザー名が無効です。The user name specified in the URI formed by combining baseUri and relativeUri is not valid.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたホスト名または機関名が円記号で終わっていてはなりません。The host or authority name specified in the URI formed by combining baseUri and relativeUri cannot be terminated by backslashes.

- または --or- baseUrirelativeUri を結合して形成された URI で指定されたポート番号が正しくないか、解析できません。The port number specified in the URI formed by combining baseUri and relativeUri is not valid or cannot be parsed.

- または --or- baseUrirelativeUri を結合して形成される URI の長さが 65519 文字を超えています。The length of the URI formed by combining baseUri and relativeUri exceeds 65519 characters.

- または --or- baseUrirelativeUri を結合して形成される URI で指定されたスキームの長さが 1023 文字を超えています。The length of the scheme specified in the URI formed by combining baseUri and relativeUri exceeds 1023 characters.

- または --or- baseUrirelativeUri を結合して形成された URI に使用できない文字シーケンスがあります。There is an invalid character sequence in the URI formed by combining baseUri and relativeUri.

- または --or- uriString に指定する MS-DOS のパスは、c:\\ で始める必要があります。The MS-DOS path specified in uriString must start with c:\\.

Uri相対 uri とを組み合わせて絶対 uri を形成することによって、クラスの新しいインスタンスを作成する例を次に示し http://www.contoso.com Hello%20World.htm ます。The following example creates a new instance of the Uri class by combining the relative URIs http://www.contoso.com and Hello%20World.htm to form an absolute URI.

Uri^ baseUri = gcnew Uri( "http://www.contoso.com/" );
Uri^ myUri = gcnew Uri( baseUri,"Hello%20World.htm",false );
Uri baseUri = new Uri("http://www.contoso.com");
Uri myUri = new Uri(baseUri, "Hello%20World.htm",false);

Dim baseUri As New Uri("http://www.contoso.com")
Dim myUri As New Uri(baseUri, "Hello%20World.htm", False)

注釈

This constructor creates a <xref:System.Uri> instance by combining baseUri and relativeUri. 渡された URI relativeUri が絶対 uri (スキーム、ホスト名、および必要に応じてポート番号を含む) の場合は、 Uri のみを使用してインスタンスが作成され relativeUri ます。If the URI passed in relativeUri is an absolute URI (containing a scheme, host name, and optionally a port number), the Uri instance is created using only relativeUri.

パラメーターは、 dontEscape 予約文字をエスケープシーケンスに変換するかどうかを制御します。The dontEscape parameter controls whether reserved characters are translated into escape sequences. このパラメーターは true 、URI 内の予約文字がすべてエスケープされていることがわかっている場合にのみに設定する必要があります。This parameter should be set to true only if you are certain that all reserved characters in the URI have been escaped. true完全にエスケープされていない URI に対して値をに設定すると、予期しない動作が発生する可能性があります。Setting the value to true for a URI that has not been completely escaped can cause unexpected behavior. このパラメーターは常にに設定することを強くお勧め false します。It is strongly recommended that you always set this parameter to false. dontEscapeがに設定されている場合 false 、コンストラクターは、すべてのパーセント (%) が出現するかどうかをチェックすることで予約文字をエスケープします。の後に有効なエスケープシーケンスが続きます。If dontEscape is set to false, the constructor escapes any reserved characters by checking that all occurrences of percent (%) are followed by a valid escape sequence. パーセントの後に続く文字シーケンスが有効でない場合、パーセントは %25 に置き換えられます。If the character sequence following a percent is not valid, the percent is replaced by %25.

このコンストラクターは、が Uri アクセス可能なリソースを参照しているかどうかを確認しません。This constructor does not ensure that the Uri refers to an accessible resource.

注意 (呼び出し元)

Because of security concerns, your application should not call this constructor with URI strings from untrusted sources and with <paramref name="dontEscape" /> set to <see langword="true" />. または、 IsWellFormedOriginalString() このコンストラクターを呼び出す前にメソッドを呼び出して、URI 文字列の有効性を確認することもできます。Alternately, you can check a URI string for validity by calling the IsWellFormedOriginalString() method prior to calling this constructor.

適用対象

製品 Introduced