Assembly : System (dans system.dll)
Syntaxe<SerializableAttribute> _ Public Class Uri Implements ISerializable
Dim instance As Uri
[SerializableAttribute] public class Uri : ISerializable
[SerializableAttribute] public ref class Uri : ISerializable
/** @attribute SerializableAttribute() */ public class Uri implements ISerializable
SerializableAttribute public class Uri implements ISerializable
NotesUn URI est une représentation compacte d'une ressource disponible pour votre application sur un intranet ou sur Internet. La classe Uri définit les propriétés et les méthodes pour la gestion des identificateurs URI, y compris l'analyse, la comparaison et la combinaison. Les propriétés de la classe Uri sont en lecture seule ; pour créer un objet modifiable, utilisez la classe UriBuilder.
Les identificateurs URI relatifs (par exemple "/new/index.htm") doivent être développés par rapport à un identificateur URI de base pour qu'ils soient absolus. La méthode MakeRelative est fournie pour convertir les identificateurs URI absolus en identificateurs relatifs, lorsque cela est nécessaire.
Les constructeurs Uri ne placent pas les chaînes URI dans des séquences d'échappement si la chaîne est un URI de forme correcte comprenant un identificateur de schéma.
Les propriétés Uri retournent une représentation de données réglementaire dans le codage avec séquence d'échappement, tous les caractères ayant des valeurs Unicode supérieures à 127 étant remplacés par leurs équivalents hexadécimaux. Pour mettre l'URI au format réglementaire, le constructeur Uri procède comme suit :
-
Convertit le modèle URI en minuscules.
-
Convertit le nom de l'hôte en minuscules.
-
Si le nom d'hôte est une adresse IPv6, l'adresse IPv6 réglementaire est utilisée. ScopeId et d'autres données IPv6 facultatives sont supprimées.
-
Supprime les numéros de port par défaut et vide.
-
Rend le chemin d'accès canonique pour les URI hiérarchiques en condensant les séquences, telles que /./, /../, //, y compris les représentations d'échappement.
-
Dans le cas d'URI hiérarchiques, si l'hôte n'est pas terminé par une barre oblique (/), une barre oblique est ajoutée.
-
Tous les caractères réservés dans l'URI sont placés dans une séquence d'échappement, conformément à RFC 2396.
Vous pouvez transformer le contenu de la classe Uri d'une référence URI codée avec séquence d'échappement en une référence URI lisible à l'aide de la méthode ToString. Notez que certains caractères réservés peuvent encore être placés dans une séquence d'échappement dans la sortie de la méthode ToString. Cela est destiné à prendre en charge la reconstitution non équivoque d'un URI à partir de la valeur retournée par ToString.
Certains URI comprennent un identificateur de fragment ou une requête ou les deux. Un identificateur de fragment est n'importe quel texte qui suit un symbole dièse (#), symbole exclus. Il est stocké dans la propriété Fragment. Les informations de requête sont n'importe quel texte qui suit un point d'interrogation (?) dans l'identificateur URI ; le texte de requête est stocké dans la propriété Query.
Dans .NET Framework version 1.1, si la chaîne spécifiée à un constructeur contient un schéma inconnu et "c: \", la classe URI insère "//" après les deux-points. Par exemple, l'URI xyz:c:\abc est converti en xyz://c:/abc. Dans .NET Framework version 2.0, ce comportement a été supprimé et la chaîne d'exemple est convertie en xyz:c:/abc.
Remarque |
|---|
| La classe URI prend en charge l'utilisation d'adresses IP en notation ponctuée à quatre nombres dans le cas du protocole IPv4 et en notation hexadécimale utilisant le signe deux-points comme séparateur, dans le cas du protocole IPv6. N'oubliez pas d'inclure l'adresse IPv6 dans des crochets, par exemple http://[::1]. |
Considérations sur les performances
Si vous utilisez un fichier Web.config qui contient des URI pour initialiser votre application, le traitement des URI prend plus de temps si leurs identificateurs de schéma ne sont pas standard. Dans ce cas, initialisez les parties affectées de votre application lorsque les URI sont requis, pas au démarrage.
Remarque sur la plate-forme Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows CE : .NET Compact Framework ne fait pas la différence entre chemin d'accès relatif et absolu. En outre, .NET Compact Framework traite les chaînes d'URI précédées du préfixe file:// différemment du .NET Framework complet. Une spécification file://myfile relative est convertie en \\myfile. L'utilisation de file:///myfile (trois barres obliques) est convertie en \myfile dans le répertoire racine. Pour garantir la réussite des opérations, spécifiez des informations de chemin d'accès absolu.
ExempleL'exemple suivant crée une instance de la classe Uri et l'utilise pour créer une instance de WebRequest.
Dim siteUri As New Uri("http://www.contoso.com/") Dim wr As WebRequest = WebRequest.Create(siteUri)
Uri siteUri = new Uri("http://www.contoso.com/"); WebRequest wr = WebRequest.Create(siteUri);
Uri^ siteUri = gcnew Uri( "http://www.contoso.com/" );
WebRequest^ wr = WebRequest::Create( siteUri );
Uri siteUri = new Uri("http://www.contoso.com/"); WebRequest wr = WebRequest.Create(siteUri);
var siteUri : Uri = new Uri("http://www.contoso.com/"); var wr : WebRequest = WebRequest.Create(siteUri);
Plates-formesWindows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition
Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.
Remarque
Outils (masquer)
S'enregistrer
Liste des Membres
Qui est en ligne?
FAQ