Uri Konstruktoren

Definition

Initialisiert eine neue Instanz der Uri-Klasse.Initializes a new instance of the Uri class.

Überlädt

Uri(String)

Initialisiert eine neue Instanz der Uri-Klasse mit dem angegebenen URI.Initializes a new instance of the Uri class with the specified URI.

Uri(SerializationInfo, StreamingContext)

Initialisiert eine neue Instanz der Uri-Klasse aus den angegebenen Instanzen der SerializationInfo-Klasse und der StreamingContext-Klasse.Initializes a new instance of the Uri class from the specified instances of the SerializationInfo and StreamingContext classes.

Uri(String, Boolean)

Initialisiert eine neue Instanz der Uri-Klasse mit dem angegebenen URI, wobei die Verwendung der Escapezeichen explizit gesteuert werden kann.Initializes a new instance of the Uri class with the specified URI, with explicit control of character escaping.

Uri(String, UriKind)

Initialisiert eine neue Instanz der Uri-Klasse mit dem angegebenen URI.Initializes a new instance of the Uri class with the specified URI. Mit diesem Konstruktor können Sie angeben, ob die URI-Zeichenfolge ein relativer URI, ein absoluter URI oder unbestimmt ist.This constructor allows you to specify if the URI string is a relative URI, absolute URI, or is indeterminate.

Uri(Uri, String)

Initialisiert eine neue Instanz der Uri-Klasse auf Grundlage des angegebenen Basis-URIs und der relativen URI-Zeichenfolge.Initializes a new instance of the Uri class based on the specified base URI and relative URI string.

Uri(Uri, Uri)

Initialisiert eine neue Instanz der Uri-Klasse auf Grundlage der Kombination einer angegebenen Uri-Instanz als Basis und einer relativen Uri-Instanz.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)

Initialisiert eine neue Instanz der Uri-Klasse auf Grundlage des angegebenen Basis-URIs und des angegebenen relativen URIs mit expliziter Steuerung der Escapesequenzen.Initializes a new instance of the Uri class based on the specified base and relative URIs, with explicit control of character escaping.

Uri(String)

Initialisiert eine neue Instanz der Uri-Klasse mit dem angegebenen 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)

Parameter

uriString
String

Eine Zeichenfolge, die die Ressource identifiziert, die durch die Uri-Instanz dargestellt werden soll.A string that identifies the resource to be represented by the Uri instance. Beachten Sie, dass eine IPv6-Adresse in Zeichenfolgenform in Klammern eingeschlossen werden muss.Note that an IPv6 address in string form must be enclosed within brackets. Beispiel: „http://[2607:f8b0:400d:c06::69]“For example, "http://[2607:f8b0:400d:c06::69]".

Ausnahmen

uriString ist null.uriString is null.

Hinweis: Fangen Sie in .NET für Windows Store-Apps oder der portablen Klassenbibliothek stattdessen die Basisklassenausnahme FormatException ab.Note: In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, FormatException, instead.

uriString ist leer.uriString is empty.

- oder --or- Das in uriString angegebene Schema entspricht nicht der korrekten Form.The scheme specified in uriString is not correctly formed. Siehe CheckSchemeName(String).See CheckSchemeName(String).

- oder --or- uriString enthält zu viele Schrägstriche (/).uriString contains too many slashes.

- oder --or- Das in uriString angegebene Kennwort ist ungültig.The password specified in uriString is not valid.

- oder --or- Der in uriString angegebene Hostname ist ungültig.The host name specified in uriString is not valid.

- oder --or- Der in uriString angegebene Dateiname ist ungültig.The file name specified in uriString is not valid.

- oder --or- Der in uriString angegebene Benutzername ist ungültig.The user name specified in uriString is not valid.

- oder --or- Am Ende des in uriString angegeben Hostnamens oder Namens der Zertifizierungsstelle sind umgekehrte Schrägstriche unzulässig.The host or authority name specified in uriString cannot be terminated by backslashes.

- oder --or- Die in uriString angegebene Anschlussnummer ist ungültig oder kann nicht analysiert werden.The port number specified in uriString is not valid or cannot be parsed.

- oder --or- Die Länge von uriString überschreitet 65519 Zeichen.The length of uriString exceeds 65519 characters.

- oder --or- Das in uriString angegebene Schema ist länger als 1023 Zeichen.The length of the scheme specified in uriString exceeds 1023 characters.

- oder --or- uriString enthält eine ungültige Zeichensequenz.There is an invalid character sequence in uriString.

- oder --or- Der in uriString angegebene MS-DOS-Pfad muss mit „c:\\“ beginnen.The MS-DOS path specified in uriString must start with c:\\.

Beispiele

Im folgenden Beispiel wird eine Uri-Instanz mit dem URI-http://www.contoso.com/erstellt.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/")

Hinweise

Dieser Konstruktor erstellt eine Uri-Instanz aus einer URI-Zeichenfolge.This constructor creates a Uri instance from a URI string. Sie analysiert den URI, fügt ihn in das kanonische Format ein und führt alle erforderlichen Escapecodierungen aus.It parses the URI, puts it in canonical format, and makes any required escape encodings.

Dieser Konstruktor stellt nicht sicher, dass die Uri auf eine barrierefreie Ressource verweist.This constructor does not ensure that the Uri refers to an accessible resource.

Dieser Konstruktor geht davon aus, dass der string-Parameter auf einen absoluten URI verweist und gleichbedeutend mit dem Aufrufen des Uri Konstruktors ist, wenn UriKind auf Absolutefestgelegt istThis constructor assumes that the string parameter references an absolute URI and is equivalent to calling the Uri constructor with UriKind set to Absolute. Wenn der string Parameter, der an den Konstruktor übergeben wird, ein relativer URI ist, löst dieser Konstruktor eine UriFormatExceptionaus.If the string parameter passed to the constructor is a relative URI, this constructor will throw a UriFormatException.

Uri(SerializationInfo, StreamingContext)

Initialisiert eine neue Instanz der Uri-Klasse aus den angegebenen Instanzen der SerializationInfo-Klasse und der StreamingContext-Klasse.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

Parameter

serializationInfo
SerializationInfo

Eine Instanz der SerializationInfo-Klasse mit den für die Serialisierung der neuen Uri-Instanz erforderlichen Informationen.An instance of the SerializationInfo class containing the information required to serialize the new Uri instance.

streamingContext
StreamingContext

Eine Instanz der StreamingContext-Klasse, die die Quelle des serialisierten Streams enthält, der der neuen Uri-Instanz zugeordnet ist.An instance of the StreamingContext class containing the source of the serialized stream associated with the new Uri instance.

Ausnahmen

Der serializationInfo-Parameter enthält einen null-URI.The serializationInfo parameter contains a null URI.

Der serializationInfo-Parameter enthält einen leeren URI.The serializationInfo parameter contains a URI that is empty.

- oder --or- Das angegebene Schema entspricht nicht der korrekten Form.The scheme specified is not correctly formed. Siehe CheckSchemeName(String).See CheckSchemeName(String).

- oder --or- Der URI enthält zu viele Schrägstriche (/).The URI contains too many slashes.

- oder --or- Das im URI angegebene Kennwort ist ungültig.The password specified in the URI is not valid.

- oder --or- Der in URI angegebene Hostname ist ungültig.The host name specified in URI is not valid.

- oder --or- Der im URI angegebene Dateiname ist ungültig.The file name specified in the URI is not valid.

- oder --or- Der im URI angegebene Benutzername ist ungültig.The user name specified in the URI is not valid.

- oder --or- Am Ende des in URI angegeben Hostnamens oder Namens der Zertifizierungsstelle sind umgekehrte Schrägstriche unzulässig.The host or authority name specified in the URI cannot be terminated by backslashes.

- oder --or- Die im URI angegebene Anschlussnummer ist ungültig oder kann nicht analysiert werden.The port number specified in the URI is not valid or cannot be parsed.

- oder --or- Der URI ist länger als 65.519 Zeichen.The length of URI exceeds 65519 characters.

- oder --or- Das im URI angegebene Schema ist länger als 1023 Zeichen.The length of the scheme specified in the URI exceeds 1023 characters.

- oder --or- Der URI enthält eine ungültige Zeichensequenz.There is an invalid character sequence in the URI.

- oder --or- Der im URI angegebene MS-DOS-Pfad muss mit „c:\\“ beginnen.The MS-DOS path specified in the URI must start with c:\\.

Hinweise

Dieser Konstruktor implementiert die ISerializable-Schnittstelle für die Uri-Klasse.This constructor implements the ISerializable interface for the Uri class.

Siehe auch

Uri(String, Boolean)

Warnung

Diese API ist jetzt veraltet.

Initialisiert eine neue Instanz der Uri-Klasse mit dem angegebenen URI, wobei die Verwendung der Escapezeichen explizit gesteuert werden kann.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);
[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")]
[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
Public Sub New (uriString As String, dontEscape As Boolean)

Parameter

uriString
String

Eine Zeichenfolge, die die Ressource identifiziert, die durch die Uri-Instanz dargestellt werden soll.A string that identifies the resource to be represented by the Uri instance. Beachten Sie, dass eine IPv6-Adresse in Zeichenfolgenform in Klammern eingeschlossen werden muss.Note that an IPv6 address in string form must be enclosed within brackets. Beispiel: „http://[2607:f8b0:400d:c06::69]“For example, "http://[2607:f8b0:400d:c06::69]".

dontEscape
Boolean

true, wenn uriString vollständig mit Escapezeichen versehen wurde, andernfalls false.true if uriString is completely escaped; otherwise, false.

Attribute

Ausnahmen

uriString ist null.uriString is null.

uriString ist leer oder enthält nur Leerzeichen.uriString is empty or contains only spaces.

- oder --or- Das in uriString angegebene Kennwort ist ungültig.The scheme specified in uriString is not valid.

- oder --or- uriString enthält zu viele Schrägstriche (/).uriString contains too many slashes.

- oder --or- Das in uriString angegebene Kennwort ist ungültig.The password specified in uriString is not valid.

- oder --or- Der in uriString angegebene Hostname ist ungültig.The host name specified in uriString is not valid.

- oder --or- Der in uriString angegebene Dateiname ist ungültig.The file name specified in uriString is not valid.

- oder --or- Der in uriString angegebene Benutzername ist ungültig.The user name specified in uriString is not valid.

- oder --or- Am Ende des in uriString angegeben Hostnamens oder Namens der Zertifizierungsstelle sind umgekehrte Schrägstriche unzulässig.The host or authority name specified in uriString cannot be terminated by backslashes.

- oder --or- Die in uriString angegebene Anschlussnummer ist ungültig oder kann nicht analysiert werden.The port number specified in uriString is not valid or cannot be parsed.

- oder --or- Die Länge von uriString überschreitet 65519 Zeichen.The length of uriString exceeds 65519 characters.

- oder --or- Das in uriString angegebene Schema ist länger als 1023 Zeichen.The length of the scheme specified in uriString exceeds 1023 characters.

- oder --or- uriString enthält eine ungültige Zeichensequenz.There is an invalid character sequence in uriString.

- oder --or- Der in uriString angegebene MS-DOS-Pfad muss mit „c:\\“ beginnen.The MS-DOS path specified in uriString must start with c:\\.

Beispiele

Im folgenden Beispiel wird eine Uri-Instanz für die URI-http://www.contoso.com/Hello%20World.htmerstellt.The following example creates a Uri instance for the URI http://www.contoso.com/Hello%20World.htm. Da der enthaltene URI vollständig mit Escapezeichen versehen und in kanonischer Form ist, kann der dontEscape-Parameter auf truefestgelegt werden.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)

Hinweise

Dieser Konstruktor erstellt eine Uri-Instanz aus einer URI-Zeichenfolge.This constructor creates a Uri instance from a URI string. Sie analysiert den URI und legt ihn im kanonischen Format ab.It parses the URI and puts it in canonical format.

Der dontEscape-Parameter steuert, ob reservierte Zeichen in Escapesequenzen übersetzt werden.The dontEscape parameter controls whether reserved characters are translated into escape sequences. Dieser Parameter sollte nur auf true festgelegt werden, wenn Sie sicher sind, dass alle reservierten Zeichen im URI mit Escapezeichen versehen wurden.This parameter should be set to true only if you are certain that all reserved characters in the URI have been escaped. Wenn Sie den Wert true für einen URI festlegen, der nicht vollständig mit Escapezeichen versehen wurde, kann unerwartetes Verhalten verursachen.Setting the value to true for a URI that has not been completely escaped can cause unexpected behavior. Es wird dringend empfohlen, diesen Parameter immer auf falsefestzulegen.It is strongly recommended that you always set this parameter to false.

Wenn dontEscape auf falsefestgelegt ist, schützt der Konstruktor alle reservierten Zeichen, indem überprüft wird, ob alle Vorkommen von Prozent (%) gefolgt von einer gültigen Escapesequenz.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. Wenn die Zeichenfolge, die einem Prozentsatz folgt, ungültig ist, wird der Prozentsatz durch %25 ersetzt.If the character sequence following a percent is not valid, the percent is replaced by %25.

Dieser Konstruktor stellt nicht sicher, dass die Uri auf eine barrierefreie Ressource verweist.This constructor does not ensure that the Uri refers to an accessible resource.

Uri(String, UriKind)

Initialisiert eine neue Instanz der Uri-Klasse mit dem angegebenen URI.Initializes a new instance of the Uri class with the specified URI. Mit diesem Konstruktor können Sie angeben, ob die URI-Zeichenfolge ein relativer URI, ein absoluter URI oder unbestimmt ist.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

Parameter

uriString
String

Eine Zeichenfolge, die die Ressource identifiziert, die durch die Uri-Instanz dargestellt werden soll.A string that identifies the resource to be represented by the Uri instance. Beachten Sie, dass eine IPv6-Adresse in Zeichenfolgenform in Klammern eingeschlossen werden muss.Note that an IPv6 address in string form must be enclosed within brackets. Beispiel: „http://[2607:f8b0:400d:c06::69]“For example, "http://[2607:f8b0:400d:c06::69]".

uriKind
UriKind

Gibt an, ob die URI-Zeichenfolge ein relativer URI, ein absoluter URI oder unbestimmt ist.Specifies whether the URI string is a relative URI, absolute URI, or is indeterminate.

Ausnahmen

uriKind ist ungültig.uriKind is invalid.

uriString ist null.uriString is null.

Hinweis: Fangen Sie in .NET für Windows Store-Apps oder der portablen Klassenbibliothek stattdessen die Basisklassenausnahme FormatException ab.Note: In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, FormatException, instead.

uriString enthält einen relativen URI, und uriKind ist Absolute.uriString contains a relative URI and uriKind is Absolute.

oderor uriString enthält einen absoluten URI, und uriKind ist Relative.uriString contains an absolute URI and uriKind is Relative.

oderor uriString ist leer.uriString is empty.

- oder --or- Das in uriString angegebene Schema entspricht nicht der korrekten Form.The scheme specified in uriString is not correctly formed. Siehe CheckSchemeName(String).See CheckSchemeName(String).

- oder --or- uriString enthält zu viele Schrägstriche (/).uriString contains too many slashes.

- oder --or- Das in uriString angegebene Kennwort ist ungültig.The password specified in uriString is not valid.

- oder --or- Der in uriString angegebene Hostname ist ungültig.The host name specified in uriString is not valid.

- oder --or- Der in uriString angegebene Dateiname ist ungültig.The file name specified in uriString is not valid.

- oder --or- Der in uriString angegebene Benutzername ist ungültig.The user name specified in uriString is not valid.

- oder --or- Am Ende des in uriString angegeben Hostnamens oder Namens der Zertifizierungsstelle sind umgekehrte Schrägstriche unzulässig.The host or authority name specified in uriString cannot be terminated by backslashes.

- oder --or- Die in uriString angegebene Anschlussnummer ist ungültig oder kann nicht analysiert werden.The port number specified in uriString is not valid or cannot be parsed.

- oder --or- Die Länge von uriString überschreitet 65519 Zeichen.The length of uriString exceeds 65519 characters.

- oder --or- Das in uriString angegebene Schema ist länger als 1023 Zeichen.The length of the scheme specified in uriString exceeds 1023 characters.

- oder --or- uriString enthält eine ungültige Zeichensequenz.There is an invalid character sequence in uriString.

- oder --or- Der in uriString angegebene MS-DOS-Pfad muss mit „c:\\“ beginnen.The MS-DOS path specified in uriString must start with c:\\.

Hinweise

Relative und absolute URIs haben unterschiedliche Einschränkungen für das Format.Relative and absolute URIs have different restrictions on their format. Ein relativer URI erfordert beispielsweise kein Schema oder eine Autorität.For example, a relative URI does not require a scheme or an authority. Der Wert, den Sie in uriKind angeben, muss mit dem Typ des in uriStringübergebenen URIs identisch sein.The value you specify in uriKind must match the type of URI passed in uriString. Wenn jedoch RelativeOrAbsolute angegeben wird, kann die URI-Zeichenfolge relativ oder absolut sein.However, if RelativeOrAbsolute is specified, the URI string can be relative or absolute.

Uri(Uri, String)

Initialisiert eine neue Instanz der Uri-Klasse auf Grundlage des angegebenen Basis-URIs und der relativen URI-Zeichenfolge.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);
new Uri : Uri * string -> Uri
Public Sub New (baseUri As Uri, relativeUri As String)

Parameter

baseUri
Uri

Der Basis-URI.The base URI.

relativeUri
String

Der relative URI, der dem Basis-URI hinzugefügt werden soll.The relative URI to add to the base URI.

Ausnahmen

baseUri ist null.baseUri is null.

baseUri ist keine absolute Uri-Instanz.baseUri is not an absolute Uri instance.

Hinweis: Fangen Sie in .NET für Windows Store-Apps oder der portablen Klassenbibliothek stattdessen die Basisklassenausnahme FormatException ab.Note: In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, FormatException, instead.

Der URI, der aus baseUri und relativeUri kombiniert wurde, ist leer oder enthält nur Leerzeichen.The URI formed by combining baseUri and relativeUri is empty or contains only spaces.

- oder --or- Das Schema, das in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The scheme specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der durch Kombination von baseUri und relativeUri gebildete URI enthält zu viele Schrägstriche.The URI formed by combining baseUri and relativeUri contains too many slashes.

- oder --or- Das Kennwort, das in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The password specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der Hostname, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The host name specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der Dateiname, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The file name specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der Benutzername, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The user name specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Am Ende des Hostnamens oder Namens der Zertifizierungsstelle, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, sind umgekehrte Schrägstriche unzulässig.The host or authority name specified in the URI formed by combining baseUri and relativeUri cannot be terminated by backslashes.

- oder --or- Die Anschlussnummer, die in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig oder kann nicht analysiert werden.The port number specified in the URI formed by combining baseUri and relativeUri is not valid or cannot be parsed.

- oder --or- Der durch Kombination von baseUri und relativeUri gebildete URI ist länger als 65519 Zeichen.The length of the URI formed by combining baseUri and relativeUri exceeds 65519 characters.

- oder --or- Das Schema, das in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist länger als 1023 Zeichen.The length of the scheme specified in the URI formed by combining baseUri and relativeUri exceeds 1023 characters.

- oder --or- Der durch Kombination von baseUri und relativeUri gebildeten URI enthält eine ungültige Zeichenfolge.There is an invalid character sequence in the URI formed by combining baseUri and relativeUri.

- oder --or- Der in uriString angegebene MS-DOS-Pfad muss mit „c:\\“ beginnen.The MS-DOS path specified in uriString must start with c:\\.

Beispiele

Im folgenden Beispiel wird eine neue Instanz der Uri-Klasse erstellt, indem die relativen URIs http://www.contoso.com kombiniert und catalog/shownew.htm, um den absoluten URI http://www.contoso.com/catalog/shownew.htmzu bilden.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())

Hinweise

Dieser Konstruktor erstellt eine Uri-Instanz, indem die baseUri und die relativeUrikombiniert werden.This constructor creates a Uri instance by combining the baseUri and the relativeUri. Wenn relativeUri ein absoluter URI ist (der ein Schema, einen Hostnamen und optional eine Portnummer enthält), wird die Uri Instanz nur mit relativeUrierstellt.If relativeUri is an absolute URI (containing a scheme, host name, and optionally a port number), the Uri instance is created using only relativeUri.

Wenn die baseUri relative Teile aufweist (z. b. /api), muss der relative Teil mit einem Schrägstrich (wie /api/) beendet werden, wenn der relative Teil baseUri in der konstruierten Uribeibehalten werden soll.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.

Wenn die relativeUri mit einem Schrägstrich beginnt, ersetzt Sie außerdem alle relativen Teile der baseUriAdditionally, if the relativeUri begins with a slash, then it will replace any relative part of the baseUri

Dieser Konstruktor stellt nicht sicher, dass die Uri auf eine barrierefreie Ressource verweist.This constructor does not ensure that the Uri refers to an accessible resource.

Uri(Uri, Uri)

Initialisiert eine neue Instanz der Uri-Klasse auf Grundlage der Kombination einer angegebenen Uri-Instanz als Basis und einer relativen Uri-Instanz.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)

Parameter

baseUri
Uri

Ein absoluter Uri, der die Basis für die neue Uri-Instanz ist.An absolute Uri that is the base for the new Uri instance.

relativeUri
Uri

Eine relative Uri-Instanz, die mit baseUri kombiniert wird.A relative Uri instance that is combined with baseUri.

Ausnahmen

baseUri ist keine absolute Uri-Instanz.baseUri is not an absolute Uri instance.

baseUri ist null.baseUri is null.

baseUri ist keine absolute Uri-Instanz.baseUri is not an absolute Uri instance.

Hinweis: Fangen Sie in .NET für Windows Store-Apps oder der portablen Klassenbibliothek stattdessen die Basisklassenausnahme FormatException ab.Note: In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, FormatException, instead.

Der URI, der aus baseUri und relativeUri kombiniert wurde, ist leer oder enthält nur Leerzeichen.The URI formed by combining baseUri and relativeUri is empty or contains only spaces.

- oder --or- Das Schema, das in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The scheme specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der durch Kombination von baseUri und relativeUri gebildete URI enthält zu viele Schrägstriche.The URI formed by combining baseUri and relativeUri contains too many slashes.

- oder --or- Das Kennwort, das in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The password specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der Hostname, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The host name specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der Dateiname, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The file name specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der Benutzername, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The user name specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Am Ende des Hostnamens oder Namens der Zertifizierungsstelle, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, sind umgekehrte Schrägstriche unzulässig.The host or authority name specified in the URI formed by combining baseUri and relativeUri cannot be terminated by backslashes.

- oder --or- Die Anschlussnummer, die in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig oder kann nicht analysiert werden.The port number specified in the URI formed by combining baseUri and relativeUri is not valid or cannot be parsed.

- oder --or- Der durch Kombination von baseUri und relativeUri gebildete URI ist länger als 65519 Zeichen.The length of the URI formed by combining baseUri and relativeUri exceeds 65519 characters.

- oder --or- Das Schema, das in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist länger als 1023 Zeichen.The length of the scheme specified in the URI formed by combining baseUri and relativeUri exceeds 1023 characters.

- oder --or- Der durch Kombination von baseUri und relativeUri gebildeten URI enthält eine ungültige Zeichenfolge.There is an invalid character sequence in the URI formed by combining baseUri and relativeUri.

- oder --or- Der in uriString angegebene MS-DOS-Pfad muss mit „c:\\“ beginnen.The MS-DOS path specified in uriString must start with c:\\.

Beispiele

In diesem Beispiel werden eine absolute Uri-Instanz, absoluteUriund eine relative Uri Instanz relativeUrierstellt.This example creates an absolute Uri instance, absoluteUri, and a relative Uri instance, relativeUri. Anschließend wird eine neue Uri Instanz, combinedUri, aus diesen beiden Instanzen erstellt.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

Hinweise

Dieser Konstruktor erstellt eine neue Uri Instanz, indem er eine absolute Uri Instanz, baseUri, mit einer relativen Uri Instanz relativeUrikombiniert.This constructor creates a new Uri instance by combining an absolute Uri instance, baseUri, with a relative Uri instance, relativeUri. Wenn relativeUri eine absolute Uri Instanz (mit einem Schema, einem Hostnamen und optional einer Portnummer) ist, wird die Uri Instanz nur mit relativeUrierstellt.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.

Wenn die baseUri relative Teile aufweist (z. b. /api), muss der relative Teil mit einem Schrägstrich (wie /api/) beendet werden, wenn der relative Teil baseUri in der konstruierten Uribeibehalten werden soll.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.

Wenn die relativeUri mit einem Schrägstrich beginnt, ersetzt Sie außerdem alle relativen Teile der baseUriAdditionally, if the relativeUri begins with a slash, then it will replace any relative part of the baseUri

Dieser Konstruktor stellt nicht sicher, dass die Uri auf eine barrierefreie Ressource verweist.This constructor does not ensure that the Uri refers to an accessible resource.

Uri(Uri, String, Boolean)

Warnung

Diese API ist jetzt veraltet.

Initialisiert eine neue Instanz der Uri-Klasse auf Grundlage des angegebenen Basis-URIs und des angegebenen relativen URIs mit expliziter Steuerung der Escapesequenzen.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);
[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")]
[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
Public Sub New (baseUri As Uri, relativeUri As String, dontEscape As Boolean)

Parameter

baseUri
Uri

Der Basis-URI.The base URI.

relativeUri
String

Der relative URI, der dem Basis-URI hinzugefügt werden soll.The relative URI to add to the base URI.

dontEscape
Boolean

true, wenn uriString vollständig mit Escapezeichen versehen wurde, andernfalls false.true if uriString is completely escaped; otherwise, false.

Attribute

Ausnahmen

baseUri ist null.baseUri is null.

baseUri ist keine absolute Uri-Instanz.baseUri is not an absolute Uri instance.

Der durch Kombination von baseUri und relativeUri erstellte URI ist leer oder enthält nur Leerzeichen.The URI formed by combining baseUri and relativeUri is empty or contains only spaces.

- oder --or- Das Schema, das in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The scheme specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der durch Kombination von baseUri und relativeUri gebildete URI enthält zu viele Schrägstriche.The URI formed by combining baseUri and relativeUri contains too many slashes.

- oder --or- Das Kennwort, das in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The password specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der Hostname, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The host name specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der Dateiname, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The file name specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Der Benutzername, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig.The user name specified in the URI formed by combining baseUri and relativeUri is not valid.

- oder --or- Am Ende des Hostnamens oder Namens der Zertifizierungsstelle, der in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, sind umgekehrte Schrägstriche unzulässig.The host or authority name specified in the URI formed by combining baseUri and relativeUri cannot be terminated by backslashes.

- oder --or- Die Anschlussnummer, die in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist ungültig oder kann nicht analysiert werden.The port number specified in the URI formed by combining baseUri and relativeUri is not valid or cannot be parsed.

- oder --or- Der durch Kombination von baseUri und relativeUri gebildete URI ist länger als 65519 Zeichen.The length of the URI formed by combining baseUri and relativeUri exceeds 65519 characters.

- oder --or- Das Schema, das in dem durch Kombination von baseUri und relativeUri gebildeten URI angegeben ist, ist länger als 1023 Zeichen.The length of the scheme specified in the URI formed by combining baseUri and relativeUri exceeds 1023 characters.

- oder --or- Der durch Kombination von baseUri und relativeUri gebildeten URI enthält eine ungültige Zeichenfolge.There is an invalid character sequence in the URI formed by combining baseUri and relativeUri.

- oder --or- Der in uriString angegebene MS-DOS-Pfad muss mit „c:\\“ beginnen.The MS-DOS path specified in uriString must start with c:\\.

Beispiele

Im folgenden Beispiel wird eine neue Instanz der Uri-Klasse erstellt, indem die relativen URIs http://www.contoso.com kombiniert und Hello%20World.htm, um einen absoluten URI zu bilden.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)

Hinweise

Dieser Konstruktor erstellt eine Uri Instanz, indem er baseUri und relativeUrikombiniert.This constructor creates a Uri instance by combining baseUri and relativeUri. Wenn es sich bei dem in relativeUri-URI um einen absoluten URI handelt (der ein Schema, einen Hostnamen und optional eine Portnummer enthält), wird die Uri Instanz nur mit relativeUrierstellt.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.

Der dontEscape-Parameter steuert, ob reservierte Zeichen in Escapesequenzen übersetzt werden.The dontEscape parameter controls whether reserved characters are translated into escape sequences. Dieser Parameter sollte nur auf true festgelegt werden, wenn Sie sicher sind, dass alle reservierten Zeichen im URI mit Escapezeichen versehen wurden.This parameter should be set to true only if you are certain that all reserved characters in the URI have been escaped. Wenn Sie den Wert true für einen URI festlegen, der nicht vollständig mit Escapezeichen versehen wurde, kann unerwartetes Verhalten verursachen.Setting the value to true for a URI that has not been completely escaped can cause unexpected behavior. Es wird dringend empfohlen, diesen Parameter immer auf falsefestzulegen.It is strongly recommended that you always set this parameter to false. Wenn dontEscape auf falsefestgelegt ist, schützt der Konstruktor alle reservierten Zeichen, indem überprüft wird, ob alle Vorkommen von Prozent (%) gefolgt von einer gültigen Escapesequenz.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. Wenn die Zeichenfolge, die einem Prozentsatz folgt, ungültig ist, wird der Prozentsatz durch %25 ersetzt.If the character sequence following a percent is not valid, the percent is replaced by %25.

Dieser Konstruktor stellt nicht sicher, dass die Uri auf eine barrierefreie Ressource verweist.This constructor does not ensure that the Uri refers to an accessible resource.

Hinweise für Aufrufer

Aufgrund von Sicherheitsbedenken sollte Ihre Anwendung diesen Konstruktor nicht mit URI-Zeichen folgen aus nicht vertrauenswürdigen Quellen und mit dontEscape auf truefestgelegt haben.Because of security concerns, your application should not call this constructor with URI strings from untrusted sources and with dontEscape set to true. Alternativ können Sie eine URI-Zeichenfolge auf Gültigkeit überprüfen, indem Sie die IsWellFormedOriginalString()-Methode aufrufen, bevor Sie diesen Konstruktor aufrufen.Alternately, you can check a URI string for validity by calling the IsWellFormedOriginalString() method prior to calling this constructor.

Gilt für: