• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 190
  • Last Modified:

Explain some code.

Can you explain to me
what this section is doing? The override? The base(_id)

        #region Inherited members
        protected override Object CreateInstance(int _id)
        {
            return new ReportTemplate(_id);
        }

        public override DataSet DataSet
        {
            get
            {
                VxDbClient _dbClient = SystemDBConnection.CreateSystemDbClient();
                DataSet _ds = _dbClient.ExecuteStoredProc("RG_sp_GetReportTemplates",
                    new VxDbParameter[] { new VxDbParameter(VxDbType.Sql, "@nvcFilter", "") });
                _ds.Tables[0].TableName = tableName;
                return _ds;
            }
        }

        public new ReportTemplate GetObject(int _id)
        {
            return base.GetObject(_id) as ReportTemplate;
        }
        #endregion

and this to
public class ReportTemplate : Object
    {
        #region Attributes
        private string name;
        private string fileName;
        #endregion

        public ReportTemplate(int _id)
            : base(_id)
        {
        }

        #region Properties
        public string Name
        {
            get
            {
                return name;
            }
        }

        public string FileName
        {
            get
            {
                return fileName;
            }
        }
        #endregion

0
mathieu_cupryk
Asked:
mathieu_cupryk
1 Solution
 
smidgie82Commented:
Hi mathieu_cupryk,

ReportTemplate is a class that's derived from the Object base class.  For every instance of ReportTemplate, there is an instance of class Object that's associated with it.  So, from within a member of ReportTemplate, "base" refers to the associate instance of class Object.  See the MSDN reference page on the base keyword: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/csref/html/vclrfbasepg.asp.  Maybe more useful, Google for Object-Oriented programming.  Wikipedia has a good page on it: http://en.wikipedia.org/wiki/Object-oriented_programming

>> public ReportTemplate (int _id) : base(_id)

This is a constructor.  Meaning that whenever an instance of ReportTemplate is created using the syntax:
ReportTemplate my_template (1);
an instance of ReportTemplate is created, and the integer "1" is passed to this constructor.  The base(_id) part is an instruction to use the Object (int _id) constructor of the Object base class, and to pass it _id as its argument.

Cheers!
0

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Tackle projects and never again get stuck behind a technical roadblock.
Join Now