错误:“最佳重载方法匹配”和“参数 1:无法从 'string' 转换为 'int'”
Posted
技术标签:
【中文标题】错误:“最佳重载方法匹配”和“参数 1:无法从 \'string\' 转换为 \'int\'”【英文标题】:Error: "The best overloaded method match for" and "Argument 1: cannot convert from 'string' to 'int'"错误:“最佳重载方法匹配”和“参数 1:无法从 'string' 转换为 'int'” 【发布时间】:2018-04-18 09:49:57 【问题描述】:我在“sqlDR.GetString("SECTION_NAME")
”中遇到错误。
SqlConnection conn = new SqlConnection(StringConnection.sqlAddress);
SqlCommand comm = new SqlCommand("select SECTION_NAME from SECTION", conn);
SqlDataReader sqlDR;
try
conn.Open();
sqlDR = comm.ExecuteReader();
while (sqlDR.Read())
string branch = sqlDR.GetString("SECTION_NAME");
cmbBranch.Items.Add(branch);
catch (Exception ex)
MessageBox.Show(ex.Message);
【问题讨论】:
DataReader.GetString() via columnname的可能重复 因为 GetString 需要整数... 【参考方案1】:您不能将 GetSrting() 与字符串参数一起使用。
GetString() 获取列索引作为参数。
在您的示例中 SECTION_NAME 有 0 列索引。
所以你的代码必须是sqlDR.GetString(0);
如果您的查询是选择 SOMETHING_ELSE,SECTION_NAME from SECTION"
您的代码必须是 sqlDR.GetString(1);
才能获得 SECTION_NAME 的值
【讨论】:
【参考方案2】:sqlDR.GetString("SECTION_NAME") 方法需要整数作为参数
您的参数是字符串,其值为 "SECTION_NAME"。
【讨论】:
以上是关于错误:“最佳重载方法匹配”和“参数 1:无法从 'string' 转换为 'int'”的主要内容,如果未能解决你的问题,请参考以下文章