This documentation is archived and is not being maintained.

GenericUriParserOptions Enumeration

Specifies options for a UriParser.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:  System
Assembly:  System (in System.dll)

public enum GenericUriParserOptions

Member nameDescription
DefaultThe parser:
  • requires an authority

  • converts back slashes into forward slashes

  • unescapes path dots, forward slashes, and back slashes

GenericAuthorityThe parser allows a registry-based authority.
AllowEmptyAuthorityThe parser allows a URI with no authority.
NoUserInfoThe scheme does not define a user information part.
NoPortThe scheme does not define a port.
NoQueryThe scheme does not define a query part.
NoFragmentThe scheme does not define a fragment part.
DontConvertPathBackslashesThe parser does not convert back slashes into forward slashes.
DontCompressPathThe parser does not canonicalize the URI.
DontUnescapePathDotsAndSlashesThe parser does not unescape path dots, forward slashes, or back slashes.
IdnThe parser supports Internationalized Domain Name (IDN) parsing (IDN) of host names. Whether IDN is used is dictated by configuration values. See the Remarks for more information.
IriParsingThe parser supports the parsing rules specified in RFC 3987 for International Resource Identifiers (IRI). Whether IRI is used is dictated by configuration values. See the Remarks for more information.

You can combine any of these options to configure a generic URI parser by passing the options as a parameter to the GenericUriParser.GenericUriParser(GenericUriParserOptions) constructor.

The existing System.Uri class has been extended to provide support for International Resource Identifiers (IRI) based on RFC 3987. Current users will not see any change from the .NET Framework 2.0 behavior unless they specifically enable IRI. This ensures application compatibility with prior versions of the .NET Framework.

The configuration setting for the System.Configuration.IdnElement is indirectly controlled by the System.Configuration.IriParsingElement configuration setting that controls IRI processing in the System.Uri class. IRI processing must be enabled for IDN processing to be possible. If IRI processing is disabled, then IDN processing will be set to the default setting where the .NET Framework 2.0 behavior is used for compatibility and IDN names are not used.

The Internationalized Domain Name (IDN) attribute only controls IDN processing. All other IRI processing (character normalization, for example) is performed by default.

For more information on IRI support, see the Remarks section for the System.Uri class.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.