ArgumentException: 已添加了具有相同键的项。

简介: 此问题出现在asp.net mvc 5 中,前端向后端请求数据,方法的参数是模型,比如 Add(Student m), 结果浏览器显示的状态是500并返回错误提示ArgumentException,如标题,堆栈信息就不贴了,网上可以搜到很多这个问题的解决办法。

此问题出现在asp.net mvc 5 中,前端向后端请求数据,方法的参数是模型,比如 Add(Student m), 结果浏览器显示的状态是500并返回错误提示ArgumentException,如标题,堆栈信息就不贴了,网上可以搜到很多这个问题的解决办法。

这个问题出现的原因中,除了前端传的参数中含有两个以上大小写不同的参数名,还有就是模型定义问题,可能有两个大小写不同的属性。以上均是因为大小写不同的参数名重复添加到字典里面,才会报这个错。

解决问题思路是:

第一、看完堆栈信息,不是自己代码出的错,直接调试源码,此法万能,没有调试不了的bug,就怕断点断在哪里都不知道,且对小白极不友好,仅适合高端玩家,不推荐。

第二、用尝试,模仿的方式去试探是定位是哪一块的原因。比如新增一个方法名不同,参数一样的方法尝试请求(用这个方法解决了前端元素绑定点击事件报 search 方法不存在的问题 onclick=“search();”,没深究,search可能是关键字什么的,改个名字就好了)。还有用同样方法名,改变参数再尝试请求,这时会发现不用那个模型作为参数就不报错了,那么问题就出在模型上了,这时候先把问题记下来,先改用常规的参数接收写法,多写几个参数,保证不在报错,之后再研究是模型哪里的问题。这类办法需要有相当的经验,才能想到,往哪方面尝试比较容易定位问题,看个人功底。

第三、回滚。问题总是突然出现的,很多同学应该都经历过,之前明明还好好地,怎么上个厕所回来就这样了。别急先保存一份现在的代码,然后一点点撤销最后面改的代码,每撤销一次就运行测试一次,撤销到上一次提交代码之前,你总能发现是改了哪一行引起的问题,找到之后,再看看什么 是写法不对还是什么,或者换个写法,换个姿势什么的就好了。此类办法也是万能的,不管有没有相关经验,都可以手动回滚到以前正确的时候,以此来定位然后解决问题。

总结:以上思路适合各种语言各种环境出现问题时可以参考的思路,使得在没有相关知识经验的时候也能解决问题。其实不是我们解决不了问题,是很多同学碰到不熟悉的问题时,通常都会一脸懵逼不知所措无从下手,还有习惯了把问题丢给别人的就想也不想直接问人家,这个问题怎么办,代码也不贴,问题虽然解决了但是却得不到提高,打了怪也不涨经验。

用心做好每一件事,结果会给你最大的惊喜!
目录
相关文章
|
安全 API Python
IDA Python的介绍
IDA Python的介绍
737 0
|
搜索推荐 前端开发 JavaScript
什么是百度优化?百度SEO优化解决方案
百度优化的解决方案不仅可以帮助企业提升网站在百度PC端的收录与关键词排名,也可以获得更好的移动端收录与关键词排名,从而达到品牌SEO推广及引流的目的。接下来小编为你详细分享什么是百度优化以及实用的解决方案,一起来看看吧。
1943 0
|
9月前
|
人工智能 自然语言处理 监控
《用API接口,为你的创业之路铺就黄金赛道!》
在数字化浪潮中,API(应用程序编程接口)为创业者提供了强大的支持。作为连接软件系统的桥梁,API简化开发流程、降低创新门槛,助力项目高效落地。通过集成支付、天气、AI等API,初创企业能快速实现功能拓展,如电商用Shopify API搭建商店、社交App借腾讯API提升分享体验。本文详解API概念、优势及实际应用,并提供操作指南,助你拥抱API,开启创业黄金时代。
162 0
|
存储 缓存 关系型数据库
智能辅助驾驶业务遭遇大表瓶颈,小鹏汽车如何破局?
小鹏汽车在智能辅助驾驶业务中遇到数据库性能挑战,如大表查询慢、频繁更新和存储空间快速膨胀。他们原使用的是社区版PostgreSQL,但随着数据量增长,性能瓶颈日益凸显。为了解决这些问题,小鹏汽车采用了阿里云的PolarDB-PG。 PolarDB-PG 的存储具备弹性扩容的能力,最大可支持 100 TB 存储空间。它的大表优化和弹性跨机并行查询(ePQ),成功解决了社区 PostgreSQL 针对大表的查询和并发更新慢的问题。在小鹏汽车的智能辅助驾驶业务上,实现了每日 TB 级大数据表的 7000 万行更新和大数据表秒级分析查询。
80800 2
|
传感器 机器学习/深度学习 人工智能
智能农业机器人:自动化种植与收割
【10月更文挑战第22天】随着科技的发展,智能农业机器人正逐步改变传统农业生产方式,引领农业走向自动化、智能化和高效化的新时代。本文将探讨智能农业机器人在精准种植、智能灌溉、高效收割和病虫害监测等方面的应用及其带来的变革。通过典型案例分析,展示智能农业机器人的优势与挑战,并展望其未来发展趋势。
|
存储 缓存 关系型数据库
【PostgreSQL内核】Trigger的一生
前言本文简单介绍 PostgreSQL 数据库的 Trigger 从创建、存储、触发、执行、修改,到删除的过程,贯穿 Trigger 的一生。文中引用的函数、结构体来源于 PG 14 源码,分支为 REL_14_STABLE,对应的 commit id 如下。此外还引用了 PG 14 官方文档。commit be0b0528cb64d49750fcb632faa2cfcd8d920be2 Auth
898 0
|
测试技术 Linux 网络安全
Linux系统配置SSH免密登录(多主机互通)
Linux系统配置SSH免密登录(多主机互通) 本文测试环境: Linux系统镜像:CentOS-7-x86_64-DVD-1804.iso 虚拟机版本:VMware-workstation-full-12.
4629 0
|
存储 缓存 Linux
系统内存管理:虚拟内存、内存分段与分页、页表缓存TLB以及Linux内存管理
虚拟内存的主要作用是提供更大的地址空间,使得每个进程都可以拥有大量的虚拟内存,而不受物理内存大小的限制。此外,虚拟内存还可以提供内存保护和共享的机制,保护每个进程的内存空间不被其他进程非法访问,并允许多个进程共享同一份物理内存数据,提高了系统的资源利用率。虚拟内存的实现方式有分段和分页两种,其中分页机制更为常用和灵活。分页机制将虚拟内存划分为固定大小的页,将每个进程的虚拟地址空间映射到物理内存的页框中。为了减少页表的大小和访问时间,采用了多级页表的方式,将大的页表划分为多个小的页表,只加载需要的页表项,节约了内存空间。
820 0
系统内存管理:虚拟内存、内存分段与分页、页表缓存TLB以及Linux内存管理
|
传感器 运维 网络协议
Modbus故障码速查手册(故障码含义、分析原因、详细解读)
当涉及到Modbus通信协议的故障排查和调试时,速查手册是一项极为重要的资源。了解故障码及其含义能够帮助工程师在通信问题出现时迅速定位和解决相关故障。 本篇文章旨在为读者提供一个方便快速查阅的资源,以便快速获取有关Modbus通信中可能出现的故障码的信息。通过仔细研究这些故障码,读者可以更有效地诊断和解决通信问题,减少故障排查的时间。
6075 0
|
JavaScript 前端开发 开发者
【Vue2从入门到精通】超简单的vue2开发环境安装
Vue是一款非常流行的JavaScript框架,它可以帮助开发者轻松地构建交互式的Web应用程序。在本文中,我们将会讲解如何搭建Vue2的开发环境,让你可以快速开始开发自己的Vue应用程序。
1131 0
【Vue2从入门到精通】超简单的vue2开发环境安装

热门文章

最新文章