Flurl 2.0
This release includes a major rewrite of parts of the core URL parser in support of a few new features and to address several issues and edge cases.
- NEW: Support for URL fragments (everything after
#
) viaUrl.Fragment
and fluentSetFragment(string)
andRemoveFragment
methods on bothUrl
and string. (#29) - NEW:
QueryParamCollection
now inherits fromList<QueryParameter>
and therefore supports in-place sorting, etc. (#78) - NEW:
SetQueryParam(string, string, bool)
overload withisEncoded
argument that allows declaring the value to already be encoded, hence avoiding double-encoding. Related, if string passed toUrl
constructor has a query, it is assumed to be already encoded. (#56) - NEW: Any
object
can be used withAppendPathSegment(s)
, avoiding need for explicit string cast. (#60) - Better preservation of order when multiple values of same name appear in query.
- BREAKING:
QueryParamCollection
no longer implementsIDictionary
. It still supports some of the same methods such asContainsKey
andthis[name]
getter/setter, but others didn't make since as the collection is more list-like than dictionary-like. - BREAKING:
QueryParamCollection
no longer has aParse
method. Query parsing can only be done by creating aUrl
object and inspecting theQueryParams
property. - BREAKING:
string.IsUrl()
extension method replaced byUrl.IsValid(string)
static method andUrl.IsValid()
instance method. - BREAKING: Support for Silverlight 5 and Windows Phone Silverlight 8.1 has been dropped due to a few quirks they caused and apparent lack of demand for them.