// ========================================================================
// Copyright 2006 - Volian Enterprises, Inc. All rights reserved.          
// Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE
// ------------------------------------------------------------------------
// $Workfile: $     $Revision: $                                           
// $Author: $   $Date: $                                                   
//                                                                         
// $History: $                                                             
// ========================================================================
using System;
using System.Data;
using System.Data.SqlClient;
using Csla;
using Csla.Data;
namespace Volian.Object.Library
{
    /// 
    ///	AssignmentInfo Generated by MyGeneration using the CSLA Object Mapping template
    /// 
    [Serializable()]
    public partial class AssignmentInfo : ReadOnlyBase
    {
        #region Business Methods
        private int _aid;
        [System.ComponentModel.DataObjectField(true, true)]
        public int Aid
        {
            [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
            get
            {
                return _aid;
            }
        }
        private int _gid;
        [System.ComponentModel.DataObjectField(true, true)]
        public int Gid
        {
            [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
            get
            {
                return _gid;
            }
        }
        private int _rid;
        [System.ComponentModel.DataObjectField(true, true)]
        public int Rid
        {
            [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
            get
            {
                return _rid;
            }
        }
        private int _folderid;
        [System.ComponentModel.DataObjectField(true, true)]
        public int Folderid
        {
            [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
            get
            {
                return _folderid;
            }
        }
        private string _startdate = string.Empty;
        [System.ComponentModel.DataObjectField(true, true)]
        public string StartDate
        {
            [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
            get
            {
                return _startdate;
            }
        }
        private string _enddate = string.Empty;
        [System.ComponentModel.DataObjectField(true, true)]
        public string EndDate
        {
            [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
            get
            {
                return _enddate;
            }
        }
        private DateTime _dts = new DateTime();
        [System.ComponentModel.DataObjectField(true, true)]
        public DateTime Dts
        {
            [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
            get
            {
                return _dts;
            }
        }
        private string _usrid = string.Empty;
        [System.ComponentModel.DataObjectField(true, true)]
        public string Usrid
        {
            [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
            get
            {
                return _usrid;
            }
        }
        // TODO: Replace base AssignmentInfo.ToString function as necessary
        /// 
        /// Overrides Base ToString
        /// 
        /// A string representation of current AssignmentInfo
        //public override string ToString()
        //{
        //  return base.ToString();
        //}
        // TODO: Check AssignmentInfo.GetIdValue to assure that the ID returned is unique
        /// 
        /// Overrides Base GetIdValue - Used internally by CSLA to determine equality
        /// 
        /// A Unique ID for the current AssignmentInfo
        protected override object GetIdValue()
        {
            return _aid;
        }
        #endregion
        #region Factory Methods
        private AssignmentInfo()
        { /* require use of factory methods */ }
        #endregion
        #region Data Access Portal
        internal AssignmentInfo(SafeDataReader dr)
        {
            try
            {
                _aid = dr.GetInt32("AID");
                _gid = dr.GetInt32("GID");
                _rid = dr.GetInt32("RID");
                _folderid = dr.GetInt32("FolderID");
                _startdate = dr.GetSmartDate("StartDate").Text;
                _enddate = dr.GetSmartDate("EndDate").Text;
                _dts = dr.GetDateTime("DTS");
                _usrid = dr.GetString("UsrID");
            }
            catch (Exception ex)
            {
                Database.LogException("AssignmentInfo", ex);
            }
        }
        #endregion
    } // Class
} // Namespace