Uri コンストラクター
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Uri クラスの新しいインスタンスを初期化します。
オーバーロード
Uri(String) |
指定した URI を使用して、Uri クラスの新しいインスタンスを初期化します。 |
Uri(SerializationInfo, StreamingContext) |
古い.
SerializationInfo クラスと StreamingContext クラスの指定したインスタンスから、Uri クラスの新しいインスタンスを初期化します。 |
Uri(String, Boolean) |
古い.
古い.
古い.
文字エスケープを明示的に制御して、指定した URI を使用して、Uri クラスの新しいインスタンスを初期化します。 |
Uri(String, UriCreationOptions) |
指定した URI と追加の UriCreationOptionsを使用して、Uri クラスの新しいインスタンスを初期化します。 |
Uri(String, UriKind) |
指定した URI を使用して、Uri クラスの新しいインスタンスを初期化します。 このコンストラクターを使用すると、URI 文字列が相対 URI、絶対 URI、または不確定かどうかを指定できます。 |
Uri(Uri, String) |
指定した基本 URI と相対 URI 文字列に基づいて、Uri クラスの新しいインスタンスを初期化します。 |
Uri(Uri, Uri) |
指定した基本 Uri インスタンスと相対 Uri インスタンスの組み合わせに基づいて、Uri クラスの新しいインスタンスを初期化します。 |
Uri(Uri, String, Boolean) |
古い.
古い.
古い.
文字エスケープを明示的に制御して、指定した基本 URI と相対 URI に基づいて、Uri クラスの新しいインスタンスを初期化します。 |
Uri(String)
- ソース:
- Uri.cs
- ソース:
- Uri.cs
- ソース:
- Uri.cs
指定した URI を使用して、Uri クラスの新しいインスタンスを初期化します。
public:
Uri(System::String ^ uriString);
public Uri (string uriString);
new Uri : string -> Uri
Public Sub New (uriString As String)
パラメーター
- uriString
- String
Uri インスタンスによって表されるリソースを識別する文字列。 文字列形式の IPv6 アドレスは角かっこで囲む必要があることに注意してください。 たとえば、"http://[2607:f8b0:400d:c06::69]" などです。
例外
uriString
は null
です。
注: Windows ストア アプリ用の .NET または ポータブル クラス ライブラリでは、代わりに基底クラスの例外である FormatExceptionをキャッチします。
uriString
が空です。
-又は-
uriString
で指定されたスキームの形式が正しくありません。
CheckSchemeName(String)を参照してください。
-又は-
uriString
に含まれているスラッシュが多すぎます。
-又は-
uriString
で指定されたパスワードが無効です。
-又は-
uriString
で指定されたホスト名が無効です。
-又は-
uriString
で指定されたファイル名が無効です。
-又は-
uriString
で指定されたユーザー名が無効です。
-又は-
uriString
で指定されたホスト名または権限名を円記号で終了することはできません。
-又は-
uriString
で指定されたポート番号が無効であるか、解析できません。
-又は-
uriString
の長さが 65519 文字を超えています。
-又は-
uriString
で指定されたスキームの長さが 1023 文字を超えています。
-又は-
uriString
に無効な文字シーケンスがあります。
-又は-
uriString
で指定する MS-DOS パスは c:\\ で始まる必要があります。
例
次の例では、URI http://www.contoso.com/
を使用して Uri インスタンスを作成します。
Uri^ baseUri = gcnew Uri( "http://www.contoso.com/" );
Uri myUri = new Uri("http://www.contoso.com/");
let myUri = Uri "http://www.contoso.com/"
Dim myUri As New Uri("http://www.contoso.com/")
注釈
このコンストラクターは、URI 文字列から Uri インスタンスを作成します。 URI を解析し、正規形式で配置し、必要なエスケープ エンコードを行います。
このコンストラクターは、Uri がアクセス可能なリソースを参照していることを保証しません。
このコンストラクターは、string
パラメーターが絶対 URI を参照し、UriKind が Absoluteに設定された Uri コンストラクターを呼び出すことと同じであることを前提としています。 コンストラクターに渡される string
パラメーターが相対 URI の場合、このコンストラクターは UriFormatExceptionをスローします。
適用対象
Uri(SerializationInfo, StreamingContext)
- ソース:
- Uri.cs
- ソース:
- Uri.cs
- ソース:
- Uri.cs
注意事項
This API supports obsolete formatter-based serialization. It should not be called or extended by application code.
SerializationInfo クラスと StreamingContext クラスの指定したインスタンスから、Uri クラスの新しいインスタンスを初期化します。
protected:
Uri(System::Runtime::Serialization::SerializationInfo ^ serializationInfo, System::Runtime::Serialization::StreamingContext streamingContext);
protected Uri (System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
[System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
protected Uri (System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
new Uri : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> Uri
[<System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new Uri : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> Uri
Protected Sub New (serializationInfo As SerializationInfo, streamingContext As StreamingContext)
パラメーター
- serializationInfo
- SerializationInfo
新しい Uri インスタンスのシリアル化に必要な情報を格納している SerializationInfo クラスのインスタンス。
- streamingContext
- StreamingContext
新しい Uri インスタンスに関連付けられたシリアル化ストリームのソースを含む StreamingContext クラスのインスタンス。
- 属性
例外
serializationInfo
パラメーターには、null
URI が含まれています。
serializationInfo
パラメーターには、空の URI が含まれています。
-又は-
指定されたスキームの形式が正しくありません。 CheckSchemeName(String)を参照してください。
-又は-
URI に含まれるスラッシュが多すぎます。
-又は-
URI で指定されたパスワードが無効です。
-又は-
URI で指定されたホスト名が無効です。
-又は-
URI で指定されたファイル名が無効です。
-又は-
URI に指定されたユーザー名が無効です。
-又は-
URI で指定されたホスト名または機関名を円記号で終了することはできません。
-又は-
URI で指定されたポート番号が無効であるか、解析できません。
-又は-
URI の長さが 65519 文字を超えています。
-又は-
URI で指定されたスキームの長さが 1023 文字を超えています。
-又は-
URI に無効な文字シーケンスがあります。
-又は-
URI で指定する MS-DOS パスは c:\\ で始まる必要があります。
注釈
このコンストラクターは、Uri クラスの ISerializable インターフェイスを実装します。
こちらもご覧ください
- XML および SOAP シリアル化 の
適用対象
Uri(String, Boolean)
- ソース:
- Uri.cs
- ソース:
- Uri.cs
- ソース:
- Uri.cs
注意事項
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
注意事項
This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(string) instead.
注意事項
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
文字エスケープを明示的に制御して、指定した URI を使用して、Uri クラスの新しいインスタンスを初期化します。
public:
Uri(System::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);
[System.Obsolete("This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(string) instead.")]
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);
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")>]
new Uri : string * bool -> Uri
[<System.Obsolete("This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(string) instead.")>]
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
new Uri : string * bool -> Uri
Public Sub New (uriString As String, dontEscape As Boolean)
パラメーター
- uriString
- String
Uri インスタンスによって表されるリソースを識別する文字列。 文字列形式の IPv6 アドレスは角かっこで囲む必要があることに注意してください。 たとえば、"http://[2607:f8b0:400d:c06::69]" などです。
- dontEscape
- Boolean
uriString
が完全にエスケープされた場合に true
します。それ以外の場合は、false
します。
- 属性
例外
uriString
は null
です。
uriString
が空であるか、スペースのみが含まれています。
-又は-
uriString
で指定されたスキームが無効です。
-又は-
uriString
に含まれているスラッシュが多すぎます。
-又は-
uriString
で指定されたパスワードが無効です。
-又は-
uriString
で指定されたホスト名が無効です。
-又は-
uriString
で指定されたファイル名が無効です。
-又は-
uriString
で指定されたユーザー名が無効です。
-又は-
uriString
で指定されたホスト名または権限名を円記号で終了することはできません。
-又は-
uriString
で指定されたポート番号が無効であるか、解析できません。
-又は-
uriString
の長さが 65519 文字を超えています。
-又は-
uriString
で指定されたスキームの長さが 1023 文字を超えています。
-又は-
uriString
に無効な文字シーケンスがあります。
-又は-
uriString
で指定する MS-DOS パスは c:\\ で始まる必要があります。
例
次の例では、URI http://www.contoso.com/Hello%20World.htm
の Uri インスタンスを作成します。 含まれている URI は完全にエスケープされ、正規形式であるため、dontEscape
パラメーターを 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);
let myUri = Uri("http://www.contoso.com/Hello%20World.htm", true)
Dim myUri As New Uri("http://www.contoso.com/Hello%20World.htm", True)
注釈
このコンストラクターは、URI 文字列から Uri インスタンスを作成します。 URI を解析し、正規形式で配置します。
dontEscape
パラメーターは、予約文字をエスケープ シーケンスに変換するかどうかを制御します。 このパラメーターは、URI 内のすべての予約文字がエスケープされていることが確実な場合にのみ、true
に設定する必要があります。 完全にエスケープされていない URI の値を true
に設定すると、予期しない動作が発生する可能性があります。 このパラメーターは常に false
に設定することを強くお勧めします。
dontEscape
が false
に設定されている場合、コンストラクターは、パーセント (%) のすべての出現箇所の後に有効なエスケープ シーケンスが続くかどうかを確認することで、予約文字をエスケープします。 パーセントに続く文字シーケンスが無効な場合、パーセントは %25に置き換えられます。
このコンストラクターは、Uri がアクセス可能なリソースを参照していることを保証しません。
適用対象
Uri(String, UriCreationOptions)
- ソース:
- Uri.cs
- ソース:
- Uri.cs
- ソース:
- Uri.cs
指定した URI と追加の UriCreationOptionsを使用して、Uri クラスの新しいインスタンスを初期化します。
public:
Uri(System::String ^ uriString, UriCreationOptions % creationOptions);
public Uri (string uriString, in UriCreationOptions creationOptions);
new Uri : string * UriCreationOptions -> Uri
Public Sub New (uriString As String, ByRef creationOptions As UriCreationOptions)
パラメーター
- creationOptions
- UriCreationOptions
Uri の作成方法と動作を制御するオプション。
適用対象
Uri(String, UriKind)
- ソース:
- Uri.cs
- ソース:
- Uri.cs
- ソース:
- Uri.cs
指定した URI を使用して、Uri クラスの新しいインスタンスを初期化します。 このコンストラクターを使用すると、URI 文字列が相対 URI、絶対 URI、または不確定かどうかを指定できます。
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 インスタンスによって表されるリソースを識別する文字列。 文字列形式の IPv6 アドレスは角かっこで囲む必要があることに注意してください。 たとえば、"http://[2607:f8b0:400d:c06::69]" などです。
- uriKind
- UriKind
URI 文字列が相対 URI、絶対 URI、または不確定かどうかを指定します。
例外
uriKind
が無効です。
uriString
は null
です。
注: Windows ストア アプリ用の .NET または ポータブル クラス ライブラリでは、代わりに基底クラスの例外である FormatExceptionをキャッチします。
uriString
には相対 URI が含まれており、uriKind
は Absolute。
又は
uriString
絶対 URI が含まれており、uriKind
が Relative。
又は
uriString
が空です。
-又は-
uriString
で指定されたスキームの形式が正しくありません。
CheckSchemeName(String)を参照してください。
-又は-
uriString
に含まれているスラッシュが多すぎます。
-又は-
uriString
で指定されたパスワードが無効です。
-又は-
uriString
で指定されたホスト名が無効です。
-又は-
uriString
で指定されたファイル名が無効です。
-又は-
uriString
で指定されたユーザー名が無効です。
-又は-
uriString
で指定されたホスト名または権限名を円記号で終了することはできません。
-又は-
uriString
で指定されたポート番号が無効であるか、解析できません。
-又は-
uriString
の長さが 65519 文字を超えています。
-又は-
uriString
で指定されたスキームの長さが 1023 文字を超えています。
-又は-
uriString
に無効な文字シーケンスがあります。
-又は-
uriString
で指定する MS-DOS パスは c:\\ で始まる必要があります。
注釈
相対 URI と絶対 URI の形式には異なる制限があります。 たとえば、相対 URI にはスキームや機関は必要ありません。
uriKind
で指定する値は、uriString
で渡される URI の種類と一致する必要があります。 ただし、RelativeOrAbsolute が指定されている場合、URI 文字列は相対または絶対にすることができます。
適用対象
Uri(Uri, String)
- ソース:
- Uri.cs
- ソース:
- Uri.cs
- ソース:
- Uri.cs
指定した基本 URI と相対 URI 文字列に基づいて、Uri クラスの新しいインスタンスを初期化します。
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。
- relativeUri
- String
ベース URI に追加する相対 URI。
例外
baseUri
は null
です。
baseUri
は絶対 Uri インスタンスではありません。
注: Windows ストア アプリ用の .NET または ポータブル クラス ライブラリでは、代わりに基底クラスの例外である FormatExceptionをキャッチします。
baseUri
と relativeUri
を組み合わせて形成された URI が空であるか、スペースのみが含まれています。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたスキームが無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI に含まれるスラッシュが多すぎます。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたパスワードが無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたホスト名が無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたファイル名が無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたユーザー名が無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたホスト名または機関名は、円記号で終了できません。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたポート番号が無効であるか、解析できません。
-又は-
baseUri
と relativeUri
を組み合わせて形成される URI の長さが 65519 文字を超えています。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたスキームの長さが 1023 文字を超えています。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI に無効な文字シーケンスがあります。
-又は-
baseUri
で指定する MS-DOS パスは c:\\ で始まる必要があります。
例
次の例では、相対 URI http://www.contoso.com
と catalog/shownew.htm
を組み合わせて絶対 URI http://www.contoso.com/catalog/shownew.htm
を形成することで、Uri クラスの新しいインスタンスを作成します。
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());
let baseUri = Uri "http://www.contoso.com"
let myUri = Uri(baseUri, "catalog/shownew.htm")
printfn $"{myUri}"
Dim baseUri As New Uri("http://www.contoso.com")
Dim myUri As New Uri(baseUri, "catalog/shownew.htm")
Console.WriteLine(myUri.ToString())
注釈
このコンストラクターは、baseUri
と relativeUri
を組み合わせて、Uri インスタンスを作成します。
relativeUri
が絶対 URI (スキーム、ホスト名、および必要に応じてポート番号を含む) の場合、Uri インスタンスは relativeUri
のみを使用して作成されます。
baseUri
に相対部分 (/api
など) がある場合、baseUri
の相対部分を構築された Uriに保持する場合は、相対部分をスラッシュ (/api/
など) で終了する必要があります。
さらに、relativeUri
がスラッシュで始まる場合は、baseUri
の相対部分が置き換えられます。
このコンストラクターは、Uri がアクセス可能なリソースを参照していることを保証しません。
適用対象
Uri(Uri, Uri)
- ソース:
- Uri.cs
- ソース:
- Uri.cs
- ソース:
- Uri.cs
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 インスタンスではありません。
baseUri
は null
です。
baseUri
は絶対 Uri インスタンスではありません。
注: Windows ストア アプリ用の .NET または ポータブル クラス ライブラリでは、代わりに基底クラスの例外である FormatExceptionをキャッチします。
baseUri
と relativeUri
を組み合わせて形成された URI が空であるか、スペースのみが含まれています。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたスキームが無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI に含まれるスラッシュが多すぎます。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたパスワードが無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたホスト名が無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたファイル名が無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたユーザー名が無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたホスト名または機関名は、円記号で終了できません。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたポート番号が無効であるか、解析できません。
-又は-
baseUri
と relativeUri
を組み合わせて形成される URI の長さが 65519 文字を超えています。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたスキームの長さが 1023 文字を超えています。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI に無効な文字シーケンスがあります。
-又は-
baseUri
で指定する MS-DOS パスは c:\\ で始まる必要があります。
例
この例では、絶対 Uri インスタンス、absoluteUri
、および相対 Uri インスタンスを作成 relativeUri
。 その後、これら 2 つのインスタンスから新しい Uri インスタンス (combinedUri
) が作成されます。
// 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.
let absoluteUri = Uri "http://www.contoso.com/"
// Create a relative Uri from a string. allowRelative = true to allow for
// creating a relative Uri.
let relativeUri = Uri("/catalog/shownew.htm?date=today", UriKind.Relative)
// Check whether the new Uri is absolute or relative.
if not relativeUri.IsAbsoluteUri then
printfn $"{relativeUri} is a relative Uri."
// Create a new Uri from an absolute Uri and a relative Uri.
let combinedUri = Uri(absoluteUri, relativeUri)
printfn $"{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
注釈
このコンストラクターは、絶対 Uri インスタンス (baseUri
) と相対 Uri インスタンス (relativeUri
) を組み合わせて、新しい Uri インスタンスを作成します。
relativeUri
が絶対 Uri インスタンス (スキーム、ホスト名、および必要に応じてポート番号を含む) である場合、Uri インスタンスは relativeUri
のみを使用して作成されます。
baseUri
に相対部分 (/api
など) がある場合、baseUri
の相対部分を構築された Uriに保持する場合は、相対部分をスラッシュ (/api/
など) で終了する必要があります。
さらに、relativeUri
がスラッシュで始まる場合は、baseUri
の相対部分が置き換えられます。
このコンストラクターは、Uri がアクセス可能なリソースを参照していることを保証しません。
適用対象
Uri(Uri, String, Boolean)
- ソース:
- Uri.cs
- ソース:
- Uri.cs
- ソース:
- Uri.cs
注意事項
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
注意事項
This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(Uri, string) instead.
注意事項
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
文字エスケープを明示的に制御して、指定した基本 URI と相対 URI に基づいて、Uri クラスの新しいインスタンスを初期化します。
public:
Uri(Uri ^ baseUri, System::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);
[System.Obsolete("This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(Uri, string) instead.")]
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);
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);
[<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
[<System.Obsolete("This constructor has been deprecated; the dontEscape parameter is always false. Use Uri(Uri, string) instead.")>]
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
new Uri : Uri * string * bool -> Uri
Public Sub New (baseUri As Uri, relativeUri As String, dontEscape As Boolean)
パラメーター
- baseUri
- Uri
ベース URI。
- relativeUri
- String
ベース URI に追加する相対 URI。
- dontEscape
- Boolean
baseUri
と relativeUri
が完全にエスケープされた場合に true
します。それ以外の場合は、false
。
- 属性
例外
baseUri
は null
です。
baseUri
は絶対 Uri インスタンスではありません。
baseUri
と relativeUri
を組み合わせて形成された URI が空であるか、スペースのみが含まれています。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたスキームが無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI に含まれるスラッシュが多すぎます。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたパスワードが無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたホスト名が無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたファイル名が無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたユーザー名が無効です。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたホスト名または機関名は、円記号で終了できません。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたポート番号が無効であるか、解析できません。
-又は-
baseUri
と relativeUri
を組み合わせて形成される URI の長さが 65519 文字を超えています。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI で指定されたスキームの長さが 1023 文字を超えています。
-又は-
baseUri
と relativeUri
を組み合わせて形成された URI に無効な文字シーケンスがあります。
-又は-
baseUri
で指定する MS-DOS パスは c:\\ で始まる必要があります。
例
次の例では、相対 URI http://www.contoso.com
と Hello%20World.htm
を組み合わせて絶対 URI を形成することで、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);
let baseUri = Uri "http://www.contoso.com"
let myUri = 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)
注釈
このコンストラクターは、baseUri
と relativeUri
を組み合わせて Uri インスタンスを作成します。
relativeUri
で渡される URI が絶対 URI (スキーム、ホスト名、および必要に応じてポート番号を含む) である場合、Uri インスタンスは relativeUri
のみを使用して作成されます。
dontEscape
パラメーターは、予約文字をエスケープ シーケンスに変換するかどうかを制御します。 このパラメーターは、URI 内のすべての予約文字がエスケープされていることが確実な場合にのみ、true
に設定する必要があります。 完全にエスケープされていない URI の値を true
に設定すると、予期しない動作が発生する可能性があります。 このパラメーターは常に false
に設定することを強くお勧めします。
dontEscape
が false
に設定されている場合、コンストラクターは、パーセント (%) のすべての出現箇所の後に有効なエスケープ シーケンスが続くかどうかを確認することで、予約文字をエスケープします。 パーセントに続く文字シーケンスが無効な場合、パーセントは %25に置き換えられます。
このコンストラクターは、Uri がアクセス可能なリソースを参照していることを保証しません。
注意 (呼び出し元)
セキュリティ上の問題があるため、アプリケーションでは、信頼されていないソースからの URI 文字列を使用して、dontEscape
を true
に設定して、このコンストラクターを呼び出さないでください。 または、このコンストラクターを呼び出す前に IsWellFormedOriginalString() メソッドを呼び出すことによって、URI 文字列の有効性を確認することもできます。
適用対象
.NET