AspNetCore中IDictionary在URI参数中出现的问题
创始人
2024-09-20 09:01:17
0

在Asp Net Core中,当我们在控制器的Action中使用IDictionary类型的参数时,会遇到在URI中传递参数时的问题。具体表现为,当我们传递一个类似于以下格式的URI时:/api/values?key1=value1&key2=value2 时,IDictionary类型的参数只会包含key1的值,并且key2的值会被忽略。

这个问题的原因在于Asp Net Core将URI中的键值对参数解析为一个字典类型的对象,而在创建字典对象时,它只会包含第一个相同名称的键值对,而会忽略之后的所有相同名称的键值对。

为了解决这个问题,我们需要修改URI传递参数的方式,将参数包装成一个JSON字符串,然后在Action中通过反序列化解析为IDictionary对象。代码示例如下:

URI参数:/api/values?json={"key1":"value1","key2":"value2"}

代码:

[HttpGet] public IActionResult Get([FromQuery] string json) { var dictionary = JsonConvert.DeserializeObject>(json); // 对dictionary进行操作 return Ok(); }

这样,我们就可以通过传递JSON字符串来解决在URI参数中使用IDictionary类型的问题了。

相关内容

热门资讯

第十分钟了解(德扑之星软件)外... 第十分钟了解(德扑之星软件)外挂透明挂辅助插件(透视)新版2025教程(2026已更新)(哔哩哔哩)...
第四分钟了解(德扑工具)外挂透... 第四分钟了解(德扑工具)外挂透明挂辅助科技(透视)爆料教程(2020已更新)(哔哩哔哩)是一款可以让...
9分钟了解(Wepoke存在)... 9分钟了解(Wepoke存在)黑科技透明挂辅助器(透视)德州教程(2025已更新)(哔哩哔哩);AI...
第1分钟了解(德州wpk德州)... 第1分钟了解(德州wpk德州)外挂智能ai辅助挂(透视)新版2025教程(2022已更新)(哔哩哔哩...
六分钟了解(pokerx)黑科... 六分钟了解(pokerx)黑科技透明挂辅助插件(透视)微扑克教程(2021已更新)(哔哩哔哩);是一...
第1分钟了解(扑克之城)黑科技... 第1分钟了解(扑克之城)黑科技透明挂辅助app(透视)新版2025教程(2024已更新)(哔哩哔哩)...
第五分钟了解(aaPoker)... 【福星临门,好运相随】;第五分钟了解(aaPoker)软件透明挂辅助软件(透视)力荐教程(2020已...
第十分钟了解(pokerrrr... 第十分钟了解(pokerrrr2)黑科技透明挂辅助代打(透视)wpk教程(2022已更新)(哔哩哔哩...
第2分钟了解(线上德州有后台)... 第2分钟了解(线上德州有后台)软件透明挂辅助黑科技(透视)第三方教程(2024已更新)(哔哩哔哩);...
第3分钟了解(德扑之星解析)软... 第3分钟了解(德扑之星解析)软件透明挂辅助代打(透视)存在挂教程(2020已更新)(哔哩哔哩),德扑...