因此,我重构了一个旧的应用程序,并制作了一个新的Sql Helper类来接管数据库工作。到目前为止,它仅包含一种方法,我不知道为什么会出现标题中提到的错误。

这是代码:

    public class Helper
{
    private static string ConnectionString
    {
        get
        {
            return ConfigurationSettings.AppSettings["ConnectionString"];
        }
    }


    public static DataSet ExecuteDataset(string commandText,params KeyValuePair<string,object>[] paramsList)
    {
        if (paramsList.Length > 0)
            return Helper.ExecuteDataset(ConnectionString, commandText, paramsList.Select(s => new MySqlParameter(s.Key, s.Value)).ToArray());

        return Helper.ExecuteDataset(ConnectionString, commandText);
    }
}

最佳答案

ExecuteDatasetparamsListKeyValuePair,但是您正在传递字符串。

我不确定您的目标是什么,但是此时您具有无限递归,因为每个路径在返回之前递归调用ExecuteDataset

关于c# - 参数类型'string'不能分配给参数类型'System.Collection.Generic.KeyValuePair <string,object>',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22302819/

10-09 05:34