c# - 将查询字符串值绑定(bind)到字典

标签 c# asp.net-mvc asp.net-web-api query-string

我正在使用 Web API(ASP.NET MVC 5 的一部分),我正在尝试将查询字符串值绑定(bind)到 Dictionary<int, bool> .

我的 Web API 方法很简单:

[HttpGet]
[Route("api/items")]
public IQueryable<Item> GetItems(Dictionary<int, bool> cf)
{
    // ...
}

如果我尝试调用此 URL:

/api/items?cf[1009]=true&cf[1011]=true&cf[1012]=false&cf[1015]=true

参数cf总是 null .

如何通过 QueryString 将值字典传递给 Web API 方法?

最佳答案

当您想使用查询字符串参数传递字典(基本上是键和值对)时,您应该使用如下格式: ¶meters[0].key=keyName¶meters[0].value=keyValue

在我的 Action 方法签名中,参数定义为:

Dictionary<string,string> parameters

希望这对您有所帮助。

在阅读 this post 之后,我能够自己想出这个来自斯科特·汉塞尔曼。所以感谢斯科特!!

谢谢, 尼拉夫

关于c# - 将查询字符串值绑定(bind)到字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29320452/

相关文章:

C# Parallel.ForEach 从池中打开了太多连接

c# - 在PHP中使用 'POST'在C#中通过JSON检索数据库信息

asp.net-mvc - ASP.NET核心: session expires but user is not redirected to login page

asp.net-mvc - 在 Visual Studio 2013 中创建自定义脚手架模板

asp.net-web-api - 向 Web API 输出添加属性的最佳实践

dynamic - Web Api OData 中的服务堆栈 Redis 添加 EdmEntityObject/EdmEntityObjectCollection

c# - 你如何设置css来添加一个asp img?

c# - 为什么 `bool?` 上没有解除短路运算符?

asp.net-mvc - 是否可以将 XDocument 作为参数传递给 ASP.NET MVC 中的操作?

c# - 如何在 Visual Studio ASP.NET Core Web 项目中每次重建时使 Kestrel 控制台窗口自动关闭/重置?