<PackageReference Include="NETStandard.Library" Version="2.0.1" />

System.Uri

public class Uri : ISerializable
namespace System { public class Uri : ISerializable { public static readonly string SchemeDelimiter; public static readonly string UriSchemeFile; public static readonly string UriSchemeFtp; public static readonly string UriSchemeGopher; public static readonly string UriSchemeHttp; public static readonly string UriSchemeHttps; public static readonly string UriSchemeMailto; public static readonly string UriSchemeNetPipe; public static readonly string UriSchemeNetTcp; public static readonly string UriSchemeNews; public static readonly string UriSchemeNntp; public string AbsolutePath { get; } public string AbsoluteUri { get; } public string Authority { get; } public string DnsSafeHost { get; } public string Fragment { get; } public string Host { get; } public UriHostNameType HostNameType { get; } public string IdnHost { get; } public bool IsAbsoluteUri { get; } public bool IsDefaultPort { get; } public bool IsFile { get; } public bool IsLoopback { get; } public bool IsUnc { get; } public string LocalPath { get; } public string OriginalString { get; } public string PathAndQuery { get; } public int Port { get; } public string Query { get; } public string Scheme { get; } public string[] Segments { get; } public bool UserEscaped { get; } public string UserInfo { get; } protected Uri(SerializationInfo serializationInfo, StreamingContext streamingContext); public Uri(string uriString); public Uri(string uriString, bool dontEscape); public Uri(string uriString, UriKind uriKind); public Uri(Uri baseUri, string relativeUri); public Uri(Uri baseUri, string relativeUri, bool dontEscape); public Uri(Uri baseUri, Uri relativeUri); protected virtual void Canonicalize(); public static UriHostNameType CheckHostName(string name); public static bool CheckSchemeName(string schemeName); protected virtual void CheckSecurity(); public static int Compare(Uri uri1, Uri uri2, UriComponents partsToCompare, UriFormat compareFormat, StringComparison comparisonType); protected virtual void Escape(); public static string EscapeDataString(string stringToEscape); protected static string EscapeString(string str); public static string EscapeUriString(string stringToEscape); public static int FromHex(char digit); public string GetComponents(UriComponents components, UriFormat format); public string GetLeftPart(UriPartial part); protected void GetObjectData(SerializationInfo serializationInfo, StreamingContext streamingContext); public static string HexEscape(char character); public static char HexUnescape(string pattern, ref int index); protected virtual bool IsBadFileSystemCharacter(char character); public bool IsBaseOf(Uri uri); protected static bool IsExcludedCharacter(char character); public static bool IsHexDigit(char character); public static bool IsHexEncoding(string pattern, int index); protected virtual bool IsReservedCharacter(char character); public bool IsWellFormedOriginalString(); public static bool IsWellFormedUriString(string uriString, UriKind uriKind); public string MakeRelative(Uri toUri); public Uri MakeRelativeUri(Uri uri); public static bool operator ==(Uri uri1, Uri uri2); public static bool operator !=(Uri uri1, Uri uri2); protected virtual void Parse(); public static bool TryCreate(string uriString, UriKind uriKind, out Uri result); public static bool TryCreate(Uri baseUri, string relativeUri, out Uri result); public static bool TryCreate(Uri baseUri, Uri relativeUri, out Uri result); protected virtual string Unescape(string path); public static string UnescapeDataString(string stringToUnescape); } }