示例#1
0
        //add a new task
        public Int32 AddTask(String taskName, String Description, DateTime?startDate, DateTime?dueDate, DateTime?completeDate,
                             String assignTo, String Status, String createBy, DateTime?createDatetime)
        {
            Int32 taskID = 0;

            try
            {
                DBObject taskDB            = new DBObject();
                List <IDataParameter> pars = new List <IDataParameter>();
                IDataParameter        par;


                //assign all fields in the task table
                par = taskDB.CreateParameter;
                par.ParameterName = "@partaskName";
                par.DbType        = DbType.String;
                par.Value         = taskName;
                pars.Add(par);

                par               = taskDB.CreateParameter;
                par.DbType        = DbType.String;
                par.ParameterName = "@pardescription";
                par.Value         = Description;
                pars.Add(par);

                par               = taskDB.CreateParameter;
                par.DbType        = DbType.DateTime;
                par.ParameterName = "@parstartDate";
                par.Value         = startDate;
                pars.Add(par);

                par               = taskDB.CreateParameter;
                par.DbType        = DbType.DateTime;
                par.ParameterName = "@pardueDate";
                if (dueDate.HasValue)
                {
                    par.Value = dueDate;
                }
                else
                {
                    par.Value = DBNull.Value;
                }
                pars.Add(par);

                par               = taskDB.CreateParameter;
                par.DbType        = DbType.DateTime;
                par.ParameterName = "@parcompleteDate";
                if (completeDate.HasValue)
                {
                    par.Value = completeDate;
                }
                else
                {
                    par.Value = DBNull.Value;
                }
                pars.Add(par);

                par               = taskDB.CreateParameter;
                par.DbType        = DbType.String;
                par.ParameterName = "@parassignTo";
                par.Value         = assignTo;
                pars.Add(par);

                par               = taskDB.CreateParameter;
                par.DbType        = DbType.String;
                par.ParameterName = "@parstatus";
                par.Value         = Status;
                pars.Add(par);

                par               = taskDB.CreateParameter;
                par.DbType        = DbType.String;
                par.ParameterName = "@parcreateBy";
                par.Value         = createBy;
                pars.Add(par);

                par               = taskDB.CreateParameter;
                par.DbType        = DbType.DateTime;
                par.ParameterName = "@parcreateDatetime";
                par.Value         = createDatetime;
                pars.Add(par);


                //insert a new task query
                string sql = @"insert into task(taskname, description, startdate, duedate, completedate," +
                             "assignto, status, createby, createdatetime) " +
                             " output inserted.taskid" +
                             " values(@partaskName, @pardescription, @parstartDate, @pardueDate, @parcompleteDate, " +
                             "@parassignTo, @parstatus, @parcreateBy, @parcreateDatetime)";
                taskID = (Int32)taskDB.ExecuteScalar(sql, pars, CommandType.Text, true);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }

            return(taskID);
        }