索引超出边界.有多少索引项可以字符串.格式



我用下面的代码来构建一个固定长度的文本文件。

                TestFile.WriteLine(string.Format(
                    //Formats with negative numbers are left justified. e.g. {1,-10}
                    "{0,50}" + //SPACER 50
                    "{1,-10}" + //NCSBN ID
                    "{2,10}" + //SPACER 10
                    "{3,-50}" + //LAST NAME
                    "{4,-30}" + //FIRST NAME
                    "{5,-30}" + //MIDDLE NAME
                    "{6,90}" + //SPACER 90
                    "{7,-8}" + //DOB
                    "{8,-1}" + //GENDER
                    "{9,-9}" + //SOCIAL SECURITY NUMBER
                    "{10,41}" + //SPACER 41
                    "{11,-60}" + //ADDRESS 1
                    "{12,-60}", //ADDRESS 2
                    DbReader.GetString(0),DbReader.GetString(1),DbReader.GetString(2),
                    DbReader.GetString(3), DbReader.GetString(4),DbReader.GetString(5),
                    DbReader.GetString(6), DbReader.GetString(7), DbReader.GetString(8),
                    DbReader.GetString(9), DbReader.GetString(10), DbReader.GetString(11),
                    DbReader.GetString(12)));

一切正常,直到我添加第12个索引,然后我得到以下错误:

System.IndexOutOfRangeException was unhandled
  Message="Index was outside the bounds of the array."
  Source="System.Data"
  StackTrace:
       at System.Data.Odbc.DbCache.AccessIndex(Int32 i)
       at System.Data.Odbc.OdbcDataReader.internalGetString(Int32 i)
       at System.Data.Odbc.OdbcDataReader.GetString(Int32 i)
       at BuildFile_EXE.Program.Main(String[] args) in G:IT DevelopmentSSISReportsNursysAPRN_ToNatCouncilBuildFile_EXEBuildFile_EXEProgram.cs:line 69
       at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
       at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       at System.Threading.ThreadHelper.ThreadStart()

字符串。格式有11个索引限制,还是我错过了什么明显的?

谢谢。

请阅读您的例外。它声明由SqlDataReader类访问的数据库中的表只有11列

最新更新