Asp.net core 如何在ASP.NET 5中使用Uri和查询字符串
以前在旧的MVC和WebApi请求类型中(Asp.net core 如何在ASP.NET 5中使用Uri和查询字符串,asp.net-core,asp.net-core-mvc,Asp.net Core,Asp.net Core Mvc,以前在旧的MVC和WebApi请求类型中(HttpRequestBase和HttpRequestMessage)具有类型为NameValueCollection的属性QueryString)。它表示请求查询字符串中的键值对。 现在在AspNet5中,HttpRequest有QueryString属性,其类型是QueryStringstruct。但它只是一个字符串值的包装器。它没有值、索引器和IEnumerable。没什么 它应该如何与QS中的值一起工作 关于使用URI,也有类似的问题。以前我们有
HttpRequestBase
和HttpRequestMessage
)具有类型为NameValueCollection
的属性QueryString
)。它表示请求查询字符串中的键值对。
现在在AspNet5中,HttpRequest有QueryString
属性,其类型是QueryString
struct。但它只是一个字符串值的包装器。它没有值、索引器和IEnumerable。没什么
它应该如何与QS中的值一起工作
关于使用URI,也有类似的问题。以前我们有
HttpRequestBase.Url
和HttpRequestMessage.RequestUri
类型的System.Uri
。现在只需要字符串(PathBase、Path、QueryString)。System.Uri有什么问题?为什么要放弃它?在beta-3中,HttpRequest
还有一个Query
属性,它是一种新类型,IReadableStringCollection
。据我所知,这与NameValueCollection
的行为几乎相同。我通过请求将其用于我的控制器。Query
我认为这是对存储库的一个建议,而不是在这里。@tugberk我很难提前知道他们是重构/重新设计了一些东西还是只是删除了一些东西(所有东西都改变了!)。在这里被问到:是的,就是这样。有关更多信息,请参阅实际上IReadableStringCollection
与它是只读的,而NameValueCollection
是读/写的。