示例#1
0
        private void btnSelect_Click(object sender, EventArgs e)
        {
            IList <Injector> injectorList = new List <Injector>();

            IInjectorStorage injectorStorage = new InjectorStorage();

            QueryInjector queryInjector = new QueryInjector();

            queryInjector.InjectorName  = textInjectorName.Text.Trim();
            queryInjector.InjectorSex   = textInjectorSex.Text.Trim();
            queryInjector.InjectorPhone = textInjectorPhone.Text.Trim();

            injectorList = injectorStorage.ListInjector(queryInjector);

            dgvInjector.AutoGenerateColumns = true;
            dgvInjector.DataSource          = injectorList;

            dgvInjector.Columns[0].Visible = false;

            dgvInjector.Columns[1].Width = 130;
            dgvInjector.Columns[2].Width = 130;
            dgvInjector.Columns[3].Width = 125;
            dgvInjector.Columns[4].Width = 130;
            dgvInjector.Columns[5].Width = 130;
        }
        IList <Injector> IInjectorManager.GetInjectorList(
            IInjectorStorage pStorage,
            QueryInjector pQueryInjector)
        {
            IList <Injector> response = null;

            try
            {
                #region Verify argument

                Verify.ArgumentNotNull(pStorage, "pStorage");
                Verify.ArgumentNotNull(pQueryInjector, "pQueryInjector");

                #endregion

                response =
                    pStorage.ListInjector(pQueryInjector);
            }
            catch (Exception ex)
            {
                ExceptionHandler.DealWithException(ex);
            }

            return(response);
        }
        IList <Injector> IInjectorStorage.ListInjector(QueryInjector pQueryInjector)
        {
            List <Injector> injectorList = null;
            SqlConnection   conn;
            IDataReader     reader;

            try
            {
                Verify.ArgumentNotNull(pQueryInjector, "pQueryInjector");

                conn = new SqlConnection(
                    ConfigurationManager
                    .ConnectionStrings["DEFAULT"].ToString());

                conn.Open();

                reader = InjectorSelectWrapper.ExecuteReader(
                    conn,
                    pQueryInjector);

                if (reader != null)
                {
                    injectorList = new List <Injector>();

                    while (reader.Read())
                    {
                        Injector myInjector = DAUtil.ReadInjector(
                            reader);

                        injectorList.Add(myInjector);
                    }
                }

                conn.Close();
            }
            catch (Exception ex)
            {
                ExceptionHandler.DealWithException(ex);
                //switch (ex.GetType().FullName)
                //{
                //    case "System.ArgumentNullException":
                //        {
                //            throw new ArgumentNullException(ex.Message);
                //        }
                //    case "System.ArgumentException":
                //        {
                //            throw new ArgumentException(ex.Message);
                //        }
                //    default:
                //        throw new Exception(ex.Message);
                //}
            }

            return(injectorList);
        }
        //数据源动态绑定
        private void InjectionMessageForm_Load(object sender, EventArgs e)
        {
            IList <Injector> injectorList    = new List <Injector>();
            IInjectorStorage injectorStorage = new InjectorStorage();
            QueryInjector    queryInjector   = new QueryInjector();

            IList <Vaccine> vaccineList    = new List <Vaccine>();
            IVaccineStorage vaccineStorage = new VaccineStorage();
            QueryVaccine    queryVaccine   = new QueryVaccine();

            injectorList = injectorStorage.ListInjector(queryInjector);
            vaccineList  = vaccineStorage.ListVaccine(queryVaccine);

            cmbInjectorName.DataSource = injectorList;
            DataTable dtInjector = new DataTable();

            cmbVaccineName.DataSource = vaccineList;
            DataTable dtVaccine = new DataTable();

            dtInjector.Columns.Add("InjectorID", typeof(System.Int32));
            dtInjector.Columns.Add("InjectorName", typeof(System.String));

            dtVaccine.Columns.Add("VaccineID", typeof(System.Int32));
            dtVaccine.Columns.Add("VaccineName", typeof(System.String));

            foreach (Injector pInjectorlist in injectorList)
            {
                dtInjector.Rows.Add(
                    pInjectorlist.InjectorID,
                    pInjectorlist.InjectorName
                    );
            }

            foreach (Vaccine pVaccinelist in vaccineList)
            {
                dtVaccine.Rows.Add(
                    pVaccinelist.VaccineID,
                    pVaccinelist.VaccineName
                    );
            }

            cmbInjectorName.DisplayMember = Convert.ToString(dtInjector.Columns[1]);
            cmbInjectorName.ValueMember   = Convert.ToString(dtInjector.Columns[0]);

            cmbVaccineName.DisplayMember = Convert.ToString(dtVaccine.Columns[1]);
            cmbVaccineName.ValueMember   = Convert.ToString(dtVaccine.Columns[0]);

            cmbInjectorName.Text = "";
            cmbVaccineName.Text  = "";
        }
        public void InjectorListSuccess()
        {
            List <Injector> injectorList = new List <Injector>();

            IInjectorStorage injectorStorage = new InjectorStorage();

            Injector myInjector = CreateInjectorForTest(
                "李某某11",
                "男11",
                "17733441111",
                "3",
                "2013-10-09");

            Injector createdInjector =
                injectorStorage.CreateInjector(myInjector);

            injectorList.Add(createdInjector);

            myInjector = CreateInjectorForTest(
                "李某某12",
                "男11",
                "17733441111",
                "3",
                "2013-10-09");

            createdInjector =
                injectorStorage.CreateInjector(myInjector);

            injectorList.Add(createdInjector);

            myInjector = CreateInjectorForTest(
                "李某某12",
                "男12",
                "17733441111",
                "3",
                "2013-10-09");

            createdInjector =
                injectorStorage.CreateInjector(myInjector);

            injectorList.Add(createdInjector);

            myInjector = CreateInjectorForTest(
                "李某某12",
                "男12",
                "17733441112",
                "3",
                "2013-10-09");

            createdInjector =
                injectorStorage.CreateInjector(myInjector);

            injectorList.Add(createdInjector);

            myInjector = CreateInjectorForTest(
                "李某某12",
                "男12",
                "17733441112",
                "2",
                "2013-10-09");

            createdInjector =
                injectorStorage.CreateInjector(myInjector);

            injectorList.Add(createdInjector);

            myInjector = CreateInjectorForTest(
                "李某某12",
                "男12",
                "17733441112",
                "2",
                "2013-11-09");

            createdInjector =
                injectorStorage.CreateInjector(myInjector);

            injectorList.Add(createdInjector);

            QueryInjector queryInjector = new QueryInjector();

            queryInjector.InjectorID     = null;
            queryInjector.InjectorName   = null;
            queryInjector.InjectorSex    = null;
            queryInjector.InjectorPhone  = null;
            queryInjector.InjectorNumber = null;
            queryInjector.InjectorTime   = null;

            IList <Injector> readedInjectorList =
                injectorStorage.ListInjector(queryInjector);

            AssertInjectorListsEqual(injectorList, readedInjectorList);

            injectorList.RemoveAt(0);

            queryInjector = new QueryInjector();

            queryInjector.InjectorID     = null;
            queryInjector.InjectorName   = "李某某12";
            queryInjector.InjectorSex    = null;
            queryInjector.InjectorPhone  = null;
            queryInjector.InjectorNumber = null;
            queryInjector.InjectorTime   = null;

            readedInjectorList =
                injectorStorage.ListInjector(queryInjector);

            AssertInjectorListsEqual(injectorList, readedInjectorList);

            injectorList.RemoveAt(0);

            queryInjector = new QueryInjector();

            queryInjector.InjectorID     = null;
            queryInjector.InjectorName   = null;
            queryInjector.InjectorSex    = "男12";
            queryInjector.InjectorPhone  = null;
            queryInjector.InjectorNumber = null;
            queryInjector.InjectorTime   = null;

            readedInjectorList =
                injectorStorage.ListInjector(queryInjector);

            AssertInjectorListsEqual(injectorList, readedInjectorList);

            injectorList.RemoveAt(0);

            queryInjector = new QueryInjector();

            queryInjector.InjectorID     = null;
            queryInjector.InjectorName   = null;
            queryInjector.InjectorSex    = null;
            queryInjector.InjectorPhone  = "17733441112";
            queryInjector.InjectorNumber = null;
            queryInjector.InjectorTime   = null;

            readedInjectorList =
                injectorStorage.ListInjector(queryInjector);

            AssertInjectorListsEqual(injectorList, readedInjectorList);

            injectorList.RemoveAt(0);

            queryInjector = new QueryInjector();

            queryInjector.InjectorID     = null;
            queryInjector.InjectorName   = null;
            queryInjector.InjectorSex    = null;
            queryInjector.InjectorPhone  = null;
            queryInjector.InjectorNumber = Convert.ToInt32("2");
            queryInjector.InjectorTime   = null;

            readedInjectorList =
                injectorStorage.ListInjector(queryInjector);

            AssertInjectorListsEqual(injectorList, readedInjectorList);

            injectorList.RemoveAt(0);

            queryInjector = new QueryInjector();

            queryInjector.InjectorID     = null;
            queryInjector.InjectorName   = null;
            queryInjector.InjectorSex    = null;
            queryInjector.InjectorPhone  = null;
            queryInjector.InjectorNumber = null;
            queryInjector.InjectorTime   = Convert.ToDateTime("2013-11-09");

            readedInjectorList =
                injectorStorage.ListInjector(queryInjector);

            AssertInjectorListsEqual(injectorList, readedInjectorList);
        }
示例#6
0
        public static SqlDataReader ExecuteReader(
            SqlConnection connection,
            QueryInjector pQueryInjector)
        {
            SqlDataReader reader;
            SqlCommand    cmd = null;
            SqlParameter  p;

            try
            {
                cmd = new SqlCommand();

                cmd.CommandText = "spInjectorSelect";

                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Connection  = connection;

                //*******     InjectorID     *******
                object val;
                if (pQueryInjector.InjectorID == null)
                {
                    val = DBNull.Value;
                }
                else
                {
                    val = pQueryInjector.InjectorID;
                }

                p           = new SqlParameter("@pInjectorID", SqlDbType.Int);
                p.Direction = ParameterDirection.Input;
                p.Value     = val;
                cmd.Parameters.Add(p);

                //*******     InjectorName     *******
                if (pQueryInjector.InjectorName == null ||
                    pQueryInjector.InjectorName == "")
                {
                    val = DBNull.Value;
                }
                else
                {
                    val = pQueryInjector.InjectorName;
                }

                p           = new SqlParameter("@pInjectorName", SqlDbType.VarChar, 50);
                p.Direction = ParameterDirection.Input;
                p.Value     = val;
                cmd.Parameters.Add(p);

                //*******     InjectorSex     *******
                if (pQueryInjector.InjectorSex == null ||
                    pQueryInjector.InjectorSex == "")
                {
                    val = DBNull.Value;
                }
                else
                {
                    val = pQueryInjector.InjectorSex;
                }

                p           = new SqlParameter("@pInjectorSex", SqlDbType.VarChar, 20);
                p.Direction = ParameterDirection.Input;
                p.Value     = val;
                cmd.Parameters.Add(p);

                //*******     InjectorPhone     *******
                if (pQueryInjector.InjectorPhone == null ||
                    pQueryInjector.InjectorPhone == "")
                {
                    val = DBNull.Value;
                }
                else
                {
                    val = pQueryInjector.InjectorPhone;
                }

                p           = new SqlParameter("@pInjectorPhone", SqlDbType.VarChar, 50);
                p.Direction = ParameterDirection.Input;
                p.Value     = val;
                cmd.Parameters.Add(p);

                //*******     InjectorNumber     *******
                if (pQueryInjector.InjectorNumber == null)
                {
                    val = DBNull.Value;
                }
                else
                {
                    val = pQueryInjector.InjectorNumber;
                }

                p           = new SqlParameter("@pInjectorNumber", SqlDbType.Int);
                p.Direction = ParameterDirection.Input;
                p.Value     = val;
                cmd.Parameters.Add(p);

                //*******     InjectorTime     *******
                if (pQueryInjector.InjectorTime == null)
                {
                    val = DBNull.Value;
                }
                else
                {
                    val = pQueryInjector.InjectorTime;
                }

                p           = new SqlParameter("@pInjectorTime", SqlDbType.DateTime);
                p.Direction = ParameterDirection.Input;
                p.Value     = val;
                cmd.Parameters.Add(p);


                reader = cmd.ExecuteReader();
            }

            finally
            {
                if (cmd != null)
                {
                    cmd.Dispose();
                }
            }
            return(reader);
        }