以前在旧的MVC和WebApi请求类型(HttpRequestBase
和HttpRequestMessage
)中,属性QueryString
的类型为NameValueCollection
。它表示请求的查询字符串中的键值对。
现在在AspNet5中,HttpRequest具有QueryString
属性,其类型为QueryString
struct。但它只是一个字符串值的包装器。它没有值,索引器,IEnumerable。没有。
如何使用QS中的值?
关于使用URI的类似问题。以前我们有HttpRequestBase.Url
和HttpRequestMessage.RequestUri
类型System.Uri
。现在只是字符串(PathBase,Path,QueryString)。 System.Uri有什么问题?它为什么被抛弃?
答案 0 :(得分:3)
在beta-3中,HttpRequest
也有Query
属性,这是一种新类型IReadableStringCollection
。这与NameValueCollection
几乎完全相同,尽我所知。我通过Request.Query
将它用作我的控制器。