//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.312
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

#pragma warning disable 1591

namespace AdoBinding {
  using System;


  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")]
  [Serializable()]
  [System.ComponentModel.DesignerCategoryAttribute("code")]
  [System.ComponentModel.ToolboxItem(true)]
  [System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedDataSetSchema")]
  [System.Xml.Serialization.XmlRootAttribute("Family")]
  [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.DataSet")]
  public partial class Family : System.Data.DataSet {

    private PeopleDataTable tablePeople;

    private System.Data.SchemaSerializationMode _schemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public Family() {
      this.BeginInit();
      this.InitClass();
      System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged);
      base.Tables.CollectionChanged += schemaChangedHandler;
      base.Relations.CollectionChanged += schemaChangedHandler;
      this.EndInit();
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    protected Family(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
      :
            base(info, context, false) {
      if( (this.IsBinarySerialized(info, context) == true) ) {
        this.InitVars(false);
        System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler1 = new System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged);
        this.Tables.CollectionChanged += schemaChangedHandler1;
        this.Relations.CollectionChanged += schemaChangedHandler1;
        return;
      }
      string strSchema = ((string)(info.GetValue("XmlSchema", typeof(string))));
      if( (this.DetermineSchemaSerializationMode(info, context) == System.Data.SchemaSerializationMode.IncludeSchema) ) {
        System.Data.DataSet ds = new System.Data.DataSet();
        ds.ReadXmlSchema(new System.Xml.XmlTextReader(new System.IO.StringReader(strSchema)));
        if( (ds.Tables["People"] != null) ) {
          base.Tables.Add(new PeopleDataTable(ds.Tables["People"]));
        }
        this.DataSetName = ds.DataSetName;
        this.Prefix = ds.Prefix;
        this.Namespace = ds.Namespace;
        this.Locale = ds.Locale;
        this.CaseSensitive = ds.CaseSensitive;
        this.EnforceConstraints = ds.EnforceConstraints;
        this.Merge(ds, false, System.Data.MissingSchemaAction.Add);
        this.InitVars();
      }
      else {
        this.ReadXmlSchema(new System.Xml.XmlTextReader(new System.IO.StringReader(strSchema)));
      }
      this.GetSerializationData(info, context);
      System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged);
      base.Tables.CollectionChanged += schemaChangedHandler;
      this.Relations.CollectionChanged += schemaChangedHandler;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Browsable(false)]
    [System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Content)]
    public PeopleDataTable People {
      get {
        return this.tablePeople;
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.BrowsableAttribute(true)]
    [System.ComponentModel.DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Visible)]
    public override System.Data.SchemaSerializationMode SchemaSerializationMode {
      get {
        return this._schemaSerializationMode;
      }
      set {
        this._schemaSerializationMode = value;
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
    public new System.Data.DataTableCollection Tables {
      get {
        return base.Tables;
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
    public new System.Data.DataRelationCollection Relations {
      get {
        return base.Relations;
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    protected override void InitializeDerivedDataSet() {
      this.BeginInit();
      this.InitClass();
      this.EndInit();
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public override System.Data.DataSet Clone() {
      Family cln = ((Family)(base.Clone()));
      cln.InitVars();
      cln.SchemaSerializationMode = this.SchemaSerializationMode;
      return cln;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    protected override bool ShouldSerializeTables() {
      return false;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    protected override bool ShouldSerializeRelations() {
      return false;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    protected override void ReadXmlSerializable(System.Xml.XmlReader reader) {
      if( (this.DetermineSchemaSerializationMode(reader) == System.Data.SchemaSerializationMode.IncludeSchema) ) {
        this.Reset();
        System.Data.DataSet ds = new System.Data.DataSet();
        ds.ReadXml(reader);
        if( (ds.Tables["People"] != null) ) {
          base.Tables.Add(new PeopleDataTable(ds.Tables["People"]));
        }
        this.DataSetName = ds.DataSetName;
        this.Prefix = ds.Prefix;
        this.Namespace = ds.Namespace;
        this.Locale = ds.Locale;
        this.CaseSensitive = ds.CaseSensitive;
        this.EnforceConstraints = ds.EnforceConstraints;
        this.Merge(ds, false, System.Data.MissingSchemaAction.Add);
        this.InitVars();
      }
      else {
        this.ReadXml(reader);
        this.InitVars();
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    protected override System.Xml.Schema.XmlSchema GetSchemaSerializable() {
      System.IO.MemoryStream stream = new System.IO.MemoryStream();
      this.WriteXmlSchema(new System.Xml.XmlTextWriter(stream, null));
      stream.Position = 0;
      return System.Xml.Schema.XmlSchema.Read(new System.Xml.XmlTextReader(stream), null);
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    internal void InitVars() {
      this.InitVars(true);
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    internal void InitVars(bool initTable) {
      this.tablePeople = ((PeopleDataTable)(base.Tables["People"]));
      if( (initTable == true) ) {
        if( (this.tablePeople != null) ) {
          this.tablePeople.InitVars();
        }
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    private void InitClass() {
      this.DataSetName = "Family";
      this.Prefix = "";
      this.Namespace = "http://tempuri.org/Family.xsd";
      this.EnforceConstraints = true;
      this.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
      this.tablePeople = new PeopleDataTable();
      base.Tables.Add(this.tablePeople);
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    private bool ShouldSerializePeople() {
      return false;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    private void SchemaChanged(object sender, System.ComponentModel.CollectionChangeEventArgs e) {
      if( (e.Action == System.ComponentModel.CollectionChangeAction.Remove) ) {
        this.InitVars();
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public static System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(System.Xml.Schema.XmlSchemaSet xs) {
      Family ds = new Family();
      System.Xml.Schema.XmlSchemaComplexType type = new System.Xml.Schema.XmlSchemaComplexType();
      System.Xml.Schema.XmlSchemaSequence sequence = new System.Xml.Schema.XmlSchemaSequence();
      xs.Add(ds.GetSchemaSerializable());
      System.Xml.Schema.XmlSchemaAny any = new System.Xml.Schema.XmlSchemaAny();
      any.Namespace = ds.Namespace;
      sequence.Items.Add(any);
      type.Particle = sequence;
      return type;
    }

    public delegate void PeopleRowChangeEventHandler(object sender, PeopleRowChangeEvent e);

    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")]
    [System.Serializable()]
    [System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
    public partial class PeopleDataTable : System.Data.DataTable, System.Collections.IEnumerable {

      private System.Data.DataColumn columnID;

      private System.Data.DataColumn columnName;

      private System.Data.DataColumn columnAge;

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public PeopleDataTable() {
        this.TableName = "People";
        this.BeginInit();
        this.InitClass();
        this.EndInit();
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      internal PeopleDataTable(System.Data.DataTable table) {
        this.TableName = table.TableName;
        if( (table.CaseSensitive != table.DataSet.CaseSensitive) ) {
          this.CaseSensitive = table.CaseSensitive;
        }
        if( (table.Locale.ToString() != table.DataSet.Locale.ToString()) ) {
          this.Locale = table.Locale;
        }
        if( (table.Namespace != table.DataSet.Namespace) ) {
          this.Namespace = table.Namespace;
        }
        this.Prefix = table.Prefix;
        this.MinimumCapacity = table.MinimumCapacity;
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      protected PeopleDataTable(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
        :
              base(info, context) {
        this.InitVars();
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public System.Data.DataColumn IDColumn {
        get {
          return this.columnID;
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public System.Data.DataColumn NameColumn {
        get {
          return this.columnName;
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public System.Data.DataColumn AgeColumn {
        get {
          return this.columnAge;
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      [System.ComponentModel.Browsable(false)]
      public int Count {
        get {
          return this.Rows.Count;
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public PeopleRow this[int index] {
        get {
          return ((PeopleRow)(this.Rows[index]));
        }
      }

      public event PeopleRowChangeEventHandler PeopleRowChanging;

      public event PeopleRowChangeEventHandler PeopleRowChanged;

      public event PeopleRowChangeEventHandler PeopleRowDeleting;

      public event PeopleRowChangeEventHandler PeopleRowDeleted;

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public void AddPeopleRow(PeopleRow row) {
        this.Rows.Add(row);
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public PeopleRow AddPeopleRow(string Name, int Age) {
        PeopleRow rowPeopleRow = ((PeopleRow)(this.NewRow()));
        rowPeopleRow.ItemArray = new object[] {
                        null,
                        Name,
                        Age};
        this.Rows.Add(rowPeopleRow);
        return rowPeopleRow;
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public PeopleRow FindByID(int ID) {
        return ((PeopleRow)(this.Rows.Find(new object[] {
                            ID})));
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public virtual System.Collections.IEnumerator GetEnumerator() {
        return this.Rows.GetEnumerator();
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public override System.Data.DataTable Clone() {
        PeopleDataTable cln = ((PeopleDataTable)(base.Clone()));
        cln.InitVars();
        return cln;
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      protected override System.Data.DataTable CreateInstance() {
        return new PeopleDataTable();
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      internal void InitVars() {
        this.columnID = base.Columns["ID"];
        this.columnName = base.Columns["Name"];
        this.columnAge = base.Columns["Age"];
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      private void InitClass() {
        this.columnID = new System.Data.DataColumn("ID", typeof(int), null, System.Data.MappingType.Element);
        base.Columns.Add(this.columnID);
        this.columnName = new System.Data.DataColumn("Name", typeof(string), null, System.Data.MappingType.Element);
        base.Columns.Add(this.columnName);
        this.columnAge = new System.Data.DataColumn("Age", typeof(int), null, System.Data.MappingType.Element);
        base.Columns.Add(this.columnAge);
        this.Constraints.Add(new System.Data.UniqueConstraint("Constraint1", new System.Data.DataColumn[] {
                                this.columnID}, true));
        this.columnID.AutoIncrement = true;
        this.columnID.AllowDBNull = false;
        this.columnID.Unique = true;
        this.columnName.MaxLength = 50;
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public PeopleRow NewPeopleRow() {
        return ((PeopleRow)(this.NewRow()));
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      protected override System.Data.DataRow NewRowFromBuilder(System.Data.DataRowBuilder builder) {
        return new PeopleRow(builder);
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      protected override System.Type GetRowType() {
        return typeof(PeopleRow);
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      protected override void OnRowChanged(System.Data.DataRowChangeEventArgs e) {
        base.OnRowChanged(e);
        if( (this.PeopleRowChanged != null) ) {
          this.PeopleRowChanged(this, new PeopleRowChangeEvent(((PeopleRow)(e.Row)), e.Action));
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      protected override void OnRowChanging(System.Data.DataRowChangeEventArgs e) {
        base.OnRowChanging(e);
        if( (this.PeopleRowChanging != null) ) {
          this.PeopleRowChanging(this, new PeopleRowChangeEvent(((PeopleRow)(e.Row)), e.Action));
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      protected override void OnRowDeleted(System.Data.DataRowChangeEventArgs e) {
        base.OnRowDeleted(e);
        if( (this.PeopleRowDeleted != null) ) {
          this.PeopleRowDeleted(this, new PeopleRowChangeEvent(((PeopleRow)(e.Row)), e.Action));
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      protected override void OnRowDeleting(System.Data.DataRowChangeEventArgs e) {
        base.OnRowDeleting(e);
        if( (this.PeopleRowDeleting != null) ) {
          this.PeopleRowDeleting(this, new PeopleRowChangeEvent(((PeopleRow)(e.Row)), e.Action));
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public void RemovePeopleRow(PeopleRow row) {
        this.Rows.Remove(row);
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public static System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(System.Xml.Schema.XmlSchemaSet xs) {
        System.Xml.Schema.XmlSchemaComplexType type = new System.Xml.Schema.XmlSchemaComplexType();
        System.Xml.Schema.XmlSchemaSequence sequence = new System.Xml.Schema.XmlSchemaSequence();
        Family ds = new Family();
        xs.Add(ds.GetSchemaSerializable());
        System.Xml.Schema.XmlSchemaAny any1 = new System.Xml.Schema.XmlSchemaAny();
        any1.Namespace = "http://www.w3.org/2001/XMLSchema";
        any1.MinOccurs = new decimal(0);
        any1.MaxOccurs = decimal.MaxValue;
        any1.ProcessContents = System.Xml.Schema.XmlSchemaContentProcessing.Lax;
        sequence.Items.Add(any1);
        System.Xml.Schema.XmlSchemaAny any2 = new System.Xml.Schema.XmlSchemaAny();
        any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
        any2.MinOccurs = new decimal(1);
        any2.ProcessContents = System.Xml.Schema.XmlSchemaContentProcessing.Lax;
        sequence.Items.Add(any2);
        System.Xml.Schema.XmlSchemaAttribute attribute1 = new System.Xml.Schema.XmlSchemaAttribute();
        attribute1.Name = "namespace";
        attribute1.FixedValue = ds.Namespace;
        type.Attributes.Add(attribute1);
        System.Xml.Schema.XmlSchemaAttribute attribute2 = new System.Xml.Schema.XmlSchemaAttribute();
        attribute2.Name = "tableTypeName";
        attribute2.FixedValue = "PeopleDataTable";
        type.Attributes.Add(attribute2);
        type.Particle = sequence;
        return type;
      }
    }

    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")]
    public partial class PeopleRow : System.Data.DataRow {

      private PeopleDataTable tablePeople;

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      internal PeopleRow(System.Data.DataRowBuilder rb)
        :
              base(rb) {
        this.tablePeople = ((PeopleDataTable)(this.Table));
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public int ID {
        get {
          return ((int)(this[this.tablePeople.IDColumn]));
        }
        set {
          this[this.tablePeople.IDColumn] = value;
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public string Name {
        get {
          try {
            return ((string)(this[this.tablePeople.NameColumn]));
          }
          catch( System.InvalidCastException e ) {
            throw new System.Data.StrongTypingException("The value for column \'Name\' in table \'People\' is DBNull.", e);
          }
        }
        set {
          this[this.tablePeople.NameColumn] = value;
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public int Age {
        get {
          try {
            return ((int)(this[this.tablePeople.AgeColumn]));
          }
          catch( System.InvalidCastException e ) {
            throw new System.Data.StrongTypingException("The value for column \'Age\' in table \'People\' is DBNull.", e);
          }
        }
        set {
          this[this.tablePeople.AgeColumn] = value;
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public bool IsNameNull() {
        return this.IsNull(this.tablePeople.NameColumn);
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public void SetNameNull() {
        this[this.tablePeople.NameColumn] = System.Convert.DBNull;
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public bool IsAgeNull() {
        return this.IsNull(this.tablePeople.AgeColumn);
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public void SetAgeNull() {
        this[this.tablePeople.AgeColumn] = System.Convert.DBNull;
      }
    }

    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")]
    public class PeopleRowChangeEvent : System.EventArgs {

      private PeopleRow eventRow;

      private System.Data.DataRowAction eventAction;

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public PeopleRowChangeEvent(PeopleRow row, System.Data.DataRowAction action) {
        this.eventRow = row;
        this.eventAction = action;
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public PeopleRow Row {
        get {
          return this.eventRow;
        }
      }

      [System.Diagnostics.DebuggerNonUserCodeAttribute()]
      public System.Data.DataRowAction Action {
        get {
          return this.eventAction;
        }
      }
    }
  }
}
namespace AdoBinding.FamilyTableAdapters {


  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")]
  [System.ComponentModel.DesignerCategoryAttribute("code")]
  [System.ComponentModel.ToolboxItem(true)]
  [System.ComponentModel.DataObjectAttribute(true)]
  [System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" +
      ", Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
  [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
  public partial class PeopleTableAdapter : System.ComponentModel.Component {

    private System.Data.OleDb.OleDbDataAdapter _adapter;

    private System.Data.OleDb.OleDbConnection _connection;

    private System.Data.OleDb.OleDbCommand[] _commandCollection;

    private bool _clearBeforeFill;

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public PeopleTableAdapter() {
      this.ClearBeforeFill = true;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    private System.Data.OleDb.OleDbDataAdapter Adapter {
      get {
        if( (this._adapter == null) ) {
          this.InitAdapter();
        }
        return this._adapter;
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    internal System.Data.OleDb.OleDbConnection Connection {
      get {
        if( (this._connection == null) ) {
          this.InitConnection();
        }
        return this._connection;
      }
      set {
        this._connection = value;
        if( (this.Adapter.InsertCommand != null) ) {
          this.Adapter.InsertCommand.Connection = value;
        }
        if( (this.Adapter.DeleteCommand != null) ) {
          this.Adapter.DeleteCommand.Connection = value;
        }
        if( (this.Adapter.UpdateCommand != null) ) {
          this.Adapter.UpdateCommand.Connection = value;
        }
        for( int i = 0; (i < this.CommandCollection.Length); i = (i + 1) ) {
          if( (this.CommandCollection[i] != null) ) {
            ((System.Data.OleDb.OleDbCommand)(this.CommandCollection[i])).Connection = value;
          }
        }
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    protected System.Data.OleDb.OleDbCommand[] CommandCollection {
      get {
        if( (this._commandCollection == null) ) {
          this.InitCommandCollection();
        }
        return this._commandCollection;
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public bool ClearBeforeFill {
      get {
        return this._clearBeforeFill;
      }
      set {
        this._clearBeforeFill = value;
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    private void InitAdapter() {
      this._adapter = new System.Data.OleDb.OleDbDataAdapter();
      System.Data.Common.DataTableMapping tableMapping = new System.Data.Common.DataTableMapping();
      tableMapping.SourceTable = "Table";
      tableMapping.DataSetTable = "People";
      tableMapping.ColumnMappings.Add("ID", "ID");
      tableMapping.ColumnMappings.Add("Name", "Name");
      tableMapping.ColumnMappings.Add("Age", "Age");
      this._adapter.TableMappings.Add(tableMapping);
      this._adapter.DeleteCommand = new System.Data.OleDb.OleDbCommand();
      this._adapter.DeleteCommand.Connection = this.Connection;
      this._adapter.DeleteCommand.CommandText = "DELETE FROM `People` WHERE ((`ID` = ?) AND ((? = 1 AND `Name` IS NULL) OR (`Name`" +
          " = ?)) AND ((? = 1 AND `Age` IS NULL) OR (`Age` = ?)))";
      this._adapter.DeleteCommand.CommandType = System.Data.CommandType.Text;
      this._adapter.DeleteCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Original_ID", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "ID", System.Data.DataRowVersion.Original, false, null));
      this._adapter.DeleteCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("IsNull_Name", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Name", System.Data.DataRowVersion.Original, true, null));
      this._adapter.DeleteCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Original_Name", System.Data.OleDb.OleDbType.VarWChar, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Name", System.Data.DataRowVersion.Original, false, null));
      this._adapter.DeleteCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("IsNull_Age", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Age", System.Data.DataRowVersion.Original, true, null));
      this._adapter.DeleteCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Original_Age", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Age", System.Data.DataRowVersion.Original, false, null));
      this._adapter.InsertCommand = new System.Data.OleDb.OleDbCommand();
      this._adapter.InsertCommand.Connection = this.Connection;
      this._adapter.InsertCommand.CommandText = "INSERT INTO `People` (`Name`, `Age`) VALUES (?, ?)";
      this._adapter.InsertCommand.CommandType = System.Data.CommandType.Text;
      this._adapter.InsertCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Name", System.Data.OleDb.OleDbType.VarWChar, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Name", System.Data.DataRowVersion.Current, false, null));
      this._adapter.InsertCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Age", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Age", System.Data.DataRowVersion.Current, false, null));
      this._adapter.UpdateCommand = new System.Data.OleDb.OleDbCommand();
      this._adapter.UpdateCommand.Connection = this.Connection;
      this._adapter.UpdateCommand.CommandText = "UPDATE `People` SET `Name` = ?, `Age` = ? WHERE ((`ID` = ?) AND ((? = 1 AND `Name" +
          "` IS NULL) OR (`Name` = ?)) AND ((? = 1 AND `Age` IS NULL) OR (`Age` = ?)))";
      this._adapter.UpdateCommand.CommandType = System.Data.CommandType.Text;
      this._adapter.UpdateCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Name", System.Data.OleDb.OleDbType.VarWChar, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Name", System.Data.DataRowVersion.Current, false, null));
      this._adapter.UpdateCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Age", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Age", System.Data.DataRowVersion.Current, false, null));
      this._adapter.UpdateCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Original_ID", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "ID", System.Data.DataRowVersion.Original, false, null));
      this._adapter.UpdateCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("IsNull_Name", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Name", System.Data.DataRowVersion.Original, true, null));
      this._adapter.UpdateCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Original_Name", System.Data.OleDb.OleDbType.VarWChar, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Name", System.Data.DataRowVersion.Original, false, null));
      this._adapter.UpdateCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("IsNull_Age", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Age", System.Data.DataRowVersion.Original, true, null));
      this._adapter.UpdateCommand.Parameters.Add(new System.Data.OleDb.OleDbParameter("Original_Age", System.Data.OleDb.OleDbType.Integer, 0, System.Data.ParameterDirection.Input, ((byte)(0)), ((byte)(0)), "Age", System.Data.DataRowVersion.Original, false, null));
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    private void InitConnection() {
      this._connection = new System.Data.OleDb.OleDbConnection();
      this._connection.ConnectionString = global::AdoBinding.Properties.Settings.Default.familyConnectionString;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    private void InitCommandCollection() {
      this._commandCollection = new System.Data.OleDb.OleDbCommand[1];
      this._commandCollection[0] = new System.Data.OleDb.OleDbCommand();
      this._commandCollection[0].Connection = this.Connection;
      this._commandCollection[0].CommandText = "SELECT ID, Name, Age FROM People";
      this._commandCollection[0].CommandType = System.Data.CommandType.Text;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
    [System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Fill, true)]
    public virtual int Fill(Family.PeopleDataTable dataTable) {
      this.Adapter.SelectCommand = this.CommandCollection[0];
      if( (this.ClearBeforeFill == true) ) {
        dataTable.Clear();
      }
      int returnValue = this.Adapter.Fill(dataTable);
      return returnValue;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
    [System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Select, true)]
    public virtual Family.PeopleDataTable GetData() {
      this.Adapter.SelectCommand = this.CommandCollection[0];
      Family.PeopleDataTable dataTable = new Family.PeopleDataTable();
      this.Adapter.Fill(dataTable);
      return dataTable;
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
    public virtual int Update(Family.PeopleDataTable dataTable) {
      return this.Adapter.Update(dataTable);
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
    public virtual int Update(Family dataSet) {
      return this.Adapter.Update(dataSet, "People");
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
    public virtual int Update(System.Data.DataRow dataRow) {
      return this.Adapter.Update(new System.Data.DataRow[] {
                        dataRow});
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
    public virtual int Update(System.Data.DataRow[] dataRows) {
      return this.Adapter.Update(dataRows);
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
    [System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Delete, true)]
    public virtual int Delete(int Original_ID, string Original_Name, System.Nullable<int> Original_Age) {
      this.Adapter.DeleteCommand.Parameters[0].Value = ((int)(Original_ID));
      if( (Original_Name == null) ) {
        this.Adapter.DeleteCommand.Parameters[1].Value = ((object)(1));
        this.Adapter.DeleteCommand.Parameters[2].Value = System.DBNull.Value;
      }
      else {
        this.Adapter.DeleteCommand.Parameters[1].Value = ((object)(0));
        this.Adapter.DeleteCommand.Parameters[2].Value = ((string)(Original_Name));
      }
      if( (Original_Age.HasValue == true) ) {
        this.Adapter.DeleteCommand.Parameters[3].Value = ((object)(0));
        this.Adapter.DeleteCommand.Parameters[4].Value = ((int)(Original_Age.Value));
      }
      else {
        this.Adapter.DeleteCommand.Parameters[3].Value = ((object)(1));
        this.Adapter.DeleteCommand.Parameters[4].Value = System.DBNull.Value;
      }
      System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State;
      if( ((this.Adapter.DeleteCommand.Connection.State & System.Data.ConnectionState.Open)
                  != System.Data.ConnectionState.Open) ) {
        this.Adapter.DeleteCommand.Connection.Open();
      }
      try {
        int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery();
        return returnValue;
      }
      finally {
        if( (previousConnectionState == System.Data.ConnectionState.Closed) ) {
          this.Adapter.DeleteCommand.Connection.Close();
        }
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
    [System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Insert, true)]
    public virtual int Insert(string Name, System.Nullable<int> Age) {
      if( (Name == null) ) {
        this.Adapter.InsertCommand.Parameters[0].Value = System.DBNull.Value;
      }
      else {
        this.Adapter.InsertCommand.Parameters[0].Value = ((string)(Name));
      }
      if( (Age.HasValue == true) ) {
        this.Adapter.InsertCommand.Parameters[1].Value = ((int)(Age.Value));
      }
      else {
        this.Adapter.InsertCommand.Parameters[1].Value = System.DBNull.Value;
      }
      System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State;
      if( ((this.Adapter.InsertCommand.Connection.State & System.Data.ConnectionState.Open)
                  != System.Data.ConnectionState.Open) ) {
        this.Adapter.InsertCommand.Connection.Open();
      }
      try {
        int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery();
        return returnValue;
      }
      finally {
        if( (previousConnectionState == System.Data.ConnectionState.Closed) ) {
          this.Adapter.InsertCommand.Connection.Close();
        }
      }
    }

    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
    [System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Update, true)]
    public virtual int Update(string Name, System.Nullable<int> Age, int Original_ID, string Original_Name, System.Nullable<int> Original_Age) {
      if( (Name == null) ) {
        this.Adapter.UpdateCommand.Parameters[0].Value = System.DBNull.Value;
      }
      else {
        this.Adapter.UpdateCommand.Parameters[0].Value = ((string)(Name));
      }
      if( (Age.HasValue == true) ) {
        this.Adapter.UpdateCommand.Parameters[1].Value = ((int)(Age.Value));
      }
      else {
        this.Adapter.UpdateCommand.Parameters[1].Value = System.DBNull.Value;
      }
      this.Adapter.UpdateCommand.Parameters[2].Value = ((int)(Original_ID));
      if( (Original_Name == null) ) {
        this.Adapter.UpdateCommand.Parameters[3].Value = ((object)(1));
        this.Adapter.UpdateCommand.Parameters[4].Value = System.DBNull.Value;
      }
      else {
        this.Adapter.UpdateCommand.Parameters[3].Value = ((object)(0));
        this.Adapter.UpdateCommand.Parameters[4].Value = ((string)(Original_Name));
      }
      if( (Original_Age.HasValue == true) ) {
        this.Adapter.UpdateCommand.Parameters[5].Value = ((object)(0));
        this.Adapter.UpdateCommand.Parameters[6].Value = ((int)(Original_Age.Value));
      }
      else {
        this.Adapter.UpdateCommand.Parameters[5].Value = ((object)(1));
        this.Adapter.UpdateCommand.Parameters[6].Value = System.DBNull.Value;
      }
      System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State;
      if( ((this.Adapter.UpdateCommand.Connection.State & System.Data.ConnectionState.Open)
                  != System.Data.ConnectionState.Open) ) {
        this.Adapter.UpdateCommand.Connection.Open();
      }
      try {
        int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery();
        return returnValue;
      }
      finally {
        if( (previousConnectionState == System.Data.ConnectionState.Closed) ) {
          this.Adapter.UpdateCommand.Connection.Close();
        }
      }
    }
  }
}

#pragma warning restore 1591