GenericUriParserOptions Enum


Specifies options for a UriParser.

This enumeration supports a bitwise combination of its member values.

public enum class GenericUriParserOptions
public enum GenericUriParserOptions
type GenericUriParserOptions = 
Public Enum GenericUriParserOptions


AllowEmptyAuthority 2

The parser allows a URI with no authority.

Default 0

The parser: requires an authority; converts backslashes into forward slashes; unescapes path dots, forward slashes, and back slashes; and removes trailing dots, empty segments, and dots-only segments.

DontCompressPath 128

The parser does not canonicalize the URI.

DontConvertPathBackslashes 64

The parser does not convert back slashes into forward slashes.

DontUnescapePathDotsAndSlashes 256

The parser does not unescape path dots, forward slashes, or back slashes.

GenericAuthority 1

The parser allows a registry-based authority.

Idn 512

The parser supports Internationalized Domain Name (IDN) parsing (IDN) of host names. Whether IDN is used is dictated by configuration values.

IriParsing 1024

The parser supports the parsing rules specified in RFC 3987 for International Resource Identifiers (IRI). Whether IRI is used is dictated by configuration values.

NoFragment 32

The scheme does not define a fragment part.

NoPort 8

The scheme does not define a port.

NoQuery 16

The scheme does not define a query part.

NoUserInfo 4

The scheme does not define a user information part.


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.

Applies to

See also