Solved

IDataReader System.IndexOutOfRangeException on Class File Object

Posted on 2008-10-24
3
575 Views
Last Modified: 2012-05-05
Hi,

I'm building a class file, and I am getting an System.IndexOutOfRangeException: when I get past the third property.  I have no idea why!

I've attached my business object


The error is raised on the line that reads: _DataTitle = reader["DataTitle"].ToString(); in the public Data999(IDataReader reader) section


using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
 
/// <summary>
/// Summary description for Data999
/// </summary>
/// 
 
public class Data999
{
    private string _DataTitle;
    public string DataTitle
    {
        get { return _DataTitle; }
        set { _DataTitle = value; }
    }
 
    private string _Forename;
    public string Forename
    {
        get { return _Forename; }
        set { _Forename = value; }
    }
 
    private string _Surname;
    public string Surname
    {
        get { return _Surname; }
        set { _Surname = value; }
    }
 
    private string _Honours;
    public string Honours
    {
        get { return _Honours; }
        set { _Honours = value; }
    }
 
    private string _BusinessPrefix;
    public string BusinessPrefix
    {
        get { return _BusinessPrefix; }
        set { _BusinessPrefix = value; }
    }
 
    private string _Premises;
    public string Premises
    {
        get { return _Premises; }
        set { _Premises = value; }
    }
 
    private string _Throughfare;
    public string Throughfare
    {
        get { return _Throughfare; }
        set { _Throughfare = value; }
    }
 
    private string _Locality;
    public string Locality
    {
        get { return _Locality; }
        set { _Locality = value; }
    }
 
    private string _Postcode;
    public string Postcode
    {
        get { return _Postcode; }
        set { _Postcode = value; }
    }
 
    private string _addedBy;
    public string addedBy
    {
        get { return _addedBy; }
        set { _addedBy = value; }
    }
 
    private string _TelephoneNumber;
    public string TelephoneNumber
    {
        get { return _TelephoneNumber; }
        set { _TelephoneNumber = value; }
    }
 
    private string _Deleted;
    public string Deleted
    {
        get { return _Deleted; }
        set { _Deleted = value; }
    }
 
 
 
	public Data999(IDataReader reader)
	{
        _addedBy = reader["addedBy"].ToString();
        _TelephoneNumber = reader["TelephoneNumber"].ToString();
        _Deleted = reader["Deleted"].ToString();
        _DataTitle = reader["DataTitle"].ToString();
        _Forename = reader["Forename"].ToString();
        _Surname = reader["Surname"].ToString();
        _Honours = reader["Honours"].ToString();
        _BusinessPrefix = reader["BusinessPrefix"].ToString();
        _Premises = reader["Premises"].ToString();
        _Throughfare = reader["Throughfare"].ToString();
        _Locality = reader["Locality"].ToString();
        _Postcode = reader["Postcode"].ToString();
 
	}
}
 
 
 
================
EXCEPTION DETAILS
================
 
Exception Details: System.IndexOutOfRangeException: DataTitle
 
Source File: c:\Inetpub\wwwroot\eff999\App_code\Data999.cs    Line: 109 
 
Source Error: 
 
 
Line 107:        _TelephoneNumber = reader["TelephoneNumber"].ToString();
Line 108:        _Deleted = reader["Deleted"].ToString();
Line 109:        _DataTitle = reader["DataTitle"].ToString();
Line 110:        _Forename = reader["Forename"].ToString();
Line 111:        _Surname = reader["Surname"].ToString();

Open in new window

0
Comment
Question by:krapvag
  • 2
3 Comments
 
LVL 6

Expert Comment

by:Werrock
ID: 22798146
Could you add the business object once more. I cannot see it.
0
 
LVL 1

Author Comment

by:krapvag
ID: 22799446
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

/// <summary>
/// Summary description for Data999
/// </summary>
///

public class Data999
{
    private string _DataTitle;
    public string DataTitle
    {
        get { return _DataTitle; }
        set { _DataTitle = value; }
    }

    private string _Forename;
    public string Forename
    {
        get { return _Forename; }
        set { _Forename = value; }
    }

    private string _Surname;
    public string Surname
    {
        get { return _Surname; }
        set { _Surname = value; }
    }

    private string _Honours;
    public string Honours
    {
        get { return _Honours; }
        set { _Honours = value; }
    }

    private string _BusinessPrefix;
    public string BusinessPrefix
    {
        get { return _BusinessPrefix; }
        set { _BusinessPrefix = value; }
    }

    private string _Premises;
    public string Premises
    {
        get { return _Premises; }
        set { _Premises = value; }
    }

    private string _Throughfare;
    public string Throughfare
    {
        get { return _Throughfare; }
        set { _Throughfare = value; }
    }

    private string _Locality;
    public string Locality
    {
        get { return _Locality; }
        set { _Locality = value; }
    }

    private string _Postcode;
    public string Postcode
    {
        get { return _Postcode; }
        set { _Postcode = value; }
    }

    private string _addedBy;
    public string addedBy
    {
        get { return _addedBy; }
        set { _addedBy = value; }
    }

    private string _TelephoneNumber;
    public string TelephoneNumber
    {
        get { return _TelephoneNumber; }
        set { _TelephoneNumber = value; }
    }

    private string _Deleted;
    public string Deleted
    {
        get { return _Deleted; }
        set { _Deleted = value; }
    }



      public Data999(IDataReader reader)
      {
        _addedBy = reader["addedBy"].ToString();
        _TelephoneNumber = reader["TelephoneNumber"].ToString();
        _Deleted = reader["Deleted"].ToString();
        _DataTitle = reader["DataTitle"].ToString();
        _Forename = reader["Forename"].ToString();
        _Surname = reader["Surname"].ToString();
        _Honours = reader["Honours"].ToString();
        _BusinessPrefix = reader["BusinessPrefix"].ToString();
        _Premises = reader["Premises"].ToString();
        _Throughfare = reader["Throughfare"].ToString();
        _Locality = reader["Locality"].ToString();
        _Postcode = reader["Postcode"].ToString();

      }
}
0
 
LVL 6

Accepted Solution

by:
Werrock earned 125 total points
ID: 22799705
Yeah, its probably since the column does not exists. This has been addressed before at:
http://www.experts-exchange.com/Programming/Languages/.NET/ASP.NET/Q_23257624.html

So please confirm that the column exists and try to check it before calling or handle exceptions by catching them in the constructor.
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
C# Json POSt to Rest API 4 60
C# Single Form 8 42
Best resource to learn entity framework 2 32
Problem with SelectList in .NET MVC application 1 11
Article by: Najam
Having new technologies does not mean they will completely replace old components.  Recently I had to create WCF that will be called by VB6 component.  Here I will describe what steps one should follow while doing so, please feel free to post any qu…
This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
This Micro Tutorial will teach you how to censor certain areas of your screen. The example in this video will show a little boy's face being blurred. This will be demonstrated using Adobe Premiere Pro CS6.
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

813 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

8 Experts available now in Live!

Get 1:1 Help Now