来自数据库 ms 服务器的列表

List from database ms server

我正在尝试使用数据库信息填充 gridView,信息生成正确,但出现此错误:

[System.FormatException] = {"Index (zero based) must be greater than or equal to zero and less than the size of the argument list."}

下面的代码,如果列表是正确的,为什么我会收到这个错误?

public List<StatusClicComplete> SelectStatusClicDB(Clic objClic , out Status returnStatus)
        {


            const string strStoredProcedure = "spSearchClicStatusTESTE";

            List<StatusClicComplete> complete = new List<StatusClicComplete>();

            try
            {


                Database database = DatabaseFactory.CreateDatabase(DATABASESETTINGS.CLICDB);
                using (DbCommand dbCommand = database.GetStoredProcCommand(strStoredProcedure))
                {
                    database.AddInParameter(dbCommand, "@iClic", DbType.Int32, objClic.ID);

                    using (IDataReader dataReader = database.ExecuteReader(dbCommand))
                    {
                        while (dataReader.Read())
                        {
                            StatusClicComplete statusClicComplete =  new StatusClicComplete();
                            statusClicComplete.iClic = objClic.ID;
                            statusClicComplete.iStatus = (int)dataReader["iStatus"];

                            statusClicComplete.dtDateCreated = (DateTime)dataReader["dtDateCreated"];
                            statusClicComplete.iEDV = (int)dataReader["iEDV"];
                            statusClicComplete.sComments = dataReader["sComments"].ToString();
                            complete.Add(statusClicComplete);
                        }
                        dataReader.Close();

                        returnStatus = StatusBuilder.BuildStatus("Success", string.Format("{0} - {1}", MethodBase.GetCurrentMethod().Name), true);

                    }
                }
            }
            catch(Exception exception)
            {

                returnStatus = StatusBuilder.BuildStatus("Error", string.Format("{0} - {1}", MethodBase.GetCurrentMethod().Name, exception.Message), false);

            }
            //TODO NAV8CA   - Escrever tratativa de objeto nulo
            return complete;

}

我觉得这条线不对..

returnStatus = StatusBuilder.BuildStatus("Success", string.Format("{0} - {1}", MethodBase.GetCurrentMethod().Name), true);

您正在使用带有 2 个格式占位符的 string.Format,但只传递了一个项目。