vs c# “System.ArgumentException”类型的未经处理的异常在 mscorlib.dll 中发生 其他信息: 已添加了具有相同键的项。

C#字典添加键值对时遇到的ArgumentException异常
本文介绍了在C#编程中,尝试向字典添加已存在键值对时遇到的‘System.ArgumentException’异常,详细解释了错误信息‘已添加了具有相同键的项’,并探讨了解决此类问题的方法。

字典不能添加已经存在的key,已经有key 1,再添加就报错了。

在这里插入图片描述

有关调用实时(JIT)调试而不是此对话框的详细信息, 请参见此消息的结尾。 ************** 异常文本 ************** System.ArgumentException: 列“姓名”不属于表 。 在 System.Data.DataRow.GetDataColumn(String columnName) 在 System.Data.DataRow.set_Item(String columnName, Object value) 在 CsvHelper第三方.Form1.button3_Click(Object sender, EventArgs e) 位置 D:\Vs\visionpro联合c#\文件存储\CsvHelper第三方\Form1.cs:行号 157 在 System.Windows.Forms.Control.OnClick(EventArgs e) 在 System.Windows.Forms.Button.OnClick(EventArgs e) 在 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) 在 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) 在 System.Windows.Forms.Control.WndProc(Message& m) 在 System.Windows.Forms.ButtonBase.WndProc(Message& m) 在 System.Windows.Forms.Button.WndProc(Message& m) 在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) 在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) ************** 已加载的程序集 ************** mscorlib 程序集版本:4.0.0.0 Win32 版本:4.8.9300.0 built by: NET481REL1LAST_C 基本代码:file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll ---------------------------------------- CsvHelper第三方 程序集版本:1.0.0.0 Win32 版本:1.0.0.0 基本代码:file:///D:/Vs/visionpro%E8%81%94%E5%90%88c%23/%E6%96%87%E4%BB%B6%E5%AD%98%E5%82%A8/CsvHelper%E7%AC%AC%E4%B8%89%E6%96%B9/bin/Debug/CsvHelper%E7%AC%AC%E4%B8%89%E6%96%B9.exe ---------------------------------------- System.Windows.Forms 程序集版本:4.0.0.0 Win32 版本:4.8.9256.0 built by: NET481REL1LAST_B 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- System 程序集版本:4.0.0.0 Win32 版本:4.8.9282.0 built by: NET481REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- System.Drawing 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- System.Data 程序集版本:4.0.0.0 Win32 版本:4.8.9214.0 built by: NET481REL1LAST_B 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll ---------------------------------------- System.Core 程序集版本:4.0.0.0 Win32 版本:4.8.9297.0 built by: NET481REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll ---------------------------------------- System.Xml 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll ---------------------------------------- System.Configuration 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll ---------------------------------------- System.Windows.Forms.resources 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.Windows.Forms.resources.dll ---------------------------------------- CsvHelper 程序集版本:33.0.0.0 Win32 版本:33.1.0.26 基本代码:file:///D:/Vs/visionpro%E8%81%94%E5%90%88c%23/%E6%96%87%E4%BB%B6%E5%AD%98%E5%82%A8/CsvHelper%E7%AC%AC%E4%B8%89%E6%96%B9/bin/Debug/CsvHelper.DLL ---------------------------------------- Microsoft.Bcl.AsyncInterfaces 程序集版本:8.0.0.0 Win32 版本:8.0.23.53103 基本代码:file:///D:/Vs/visionpro%E8%81%94%E5%90%88c%23/%E6%96%87%E4%BB%B6%E5%AD%98%E5%82%A8/CsvHelper%E7%AC%AC%E4%B8%89%E6%96%B9/bin/Debug/Microsoft.Bcl.AsyncInterfaces.DLL ---------------------------------------- System.Numerics 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll ---------------------------------------- System.Data.resources 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Data.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.Data.resources.dll ---------------------------------------- mscorlib.resources 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/mscorlib.resources.dll ---------------------------------------- ************** JIT 调试 ************** 要启用实时(JIT)调试, 该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置 jitDebugging 值。 编译应用程序时还必须启用 调试。 例如: <configuration> <system.windows.forms jitDebugging="true" /> </configuration> 启用 JIT 调试后,任何未经处理异常 都将被发送到在此计算机上注册的 JIT 调试程序, 而不是由此对话框处理
09-06
这个错误信息: > “System.ArgumentException类型未经处理异常在 Oracle.ManagedDataAccess.dll发生 > 其他信息: 连接字符串的格式不正确 表示你使用的 **Oracle 连接字符串格式有误**,导致 Oracle 的 .NET 数据提供程序(Oracle.ManagedDataAccess)无法解析。 --- ### 常见原因及解决方法: #### ✅ 正确连接字符串格式示例: ```csharp string connStr = "User Id=your_username;Password=your_password;Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=132.147.180.30)(PORT=1524))(CONNECT_DATA=(SID=UAT)))"; ``` #### 常见错误原因: 1. **格式不完整或缺少必要字段**(如 User Id、Password、Data Source) 2. **Data Source 中的 TNS 描述符格式错误**(括号不匹配、关字拼写错误等) 3. **未正确转义括号**(在 C# 字符串中使用 `@""` 原始字符串可以避免转义问题) 4. **使用了错误的协议或地址**(如 HOST 不可达或 PORT 错误) --- ### 示例代码(C# 连接 Oracle): ```csharp using Oracle.ManagedDataAccess.Client; using System; class Program { static void Main() { string connStr = @"User Id=your_username;Password=your_password;Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=132.147.180.30)(PORT=1524))(CONNECT_DATA=(SID=UAT)))"; using (OracleConnection conn = new OracleConnection(connStr)) { try { conn.Open(); Console.WriteLine("连接成功!"); } catch (Exception ex) { Console.WriteLine("连接失败:" + ex.Message); } } } } ``` --- ### 额外建议: - 可以使用 `tnsping UAT` 命令测试 TNS 是否配置正确。 - 如果使用的是 **Oracle 12c 及以上版本**,建议使用 **服务名(SERVICE_NAME)** 而不是 SID。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BigData-0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值