示例#1
0
        public static int CreateProductType(String ProductTypeName, ref List <string> errors)
        {
            List <ProductTypeInfo> pi = DALType.ReadProductTypeList(ref errors);

            if (ProductTypeName == null)
            {
                errors.Add("Product type name cannot be null");
                return(-1);
            }

            for (int i = 0; i < pi.Count; i++)
            {
                if (ProductTypeName.ToLower() == pi[i].product_type_name.ToLower())
                {
                    errors.Add("ProductType name already exists");
                }
            }

            if (errors.Count > 0)
            {
                return(-1);
            }

            return(DALType.CreateProductType(ProductTypeName, ref errors));
        }
示例#2
0
文件: Factory.cs 项目: xxy1991/cozy
 public static INoteDAL GetNoteDAL(DALType dalType = DALType.Defualt) {
     switch (dalType) {
         case DALType.HttpAPI:
             return new HttpApi.NoteDAL();
         case DALType.Native:
             return new Native.NoteDAL();
         default:
             return new Native.NoteDAL();
     }
 }
示例#3
0
        public Generator(string connectionString, string outputFolder)
        {
            _connectionString       = connectionString;
            _outputFolder           = outputFolder;
            _dalType                = DALType.SQL;
            _columnLanguageType     = ColumnLanguageType.CSHARP;
            _columnDataProviderType = ColumnDataProviderType.SQLCLIENT;

            _columnLanguageTypeValues     = this.LoadColumnLanguageTypeValues(_dalType.ToString(), _columnLanguageType.ToString());
            _columnDataProviderTypeValues = this.LoadColumnDataProviderTypeValues(_dalType.ToString(), _columnDataProviderType.ToString());
            _languageReservedWordValues   = this.LoadReservedWordValues(_columnLanguageType.ToString());
        }
示例#4
0
        public Generator(string connectionString, string outputFolder)
        {
            _connectionString = connectionString;
            _outputFolder = outputFolder;
            _dalType = DALType.SQL;
            _columnLanguageType = ColumnLanguageType.CSHARP;
            _columnDataProviderType = ColumnDataProviderType.SQLCLIENT;

            _columnLanguageTypeValues = this.LoadColumnLanguageTypeValues(_dalType.ToString(), _columnLanguageType.ToString());
            _columnDataProviderTypeValues = this.LoadColumnDataProviderTypeValues(_dalType.ToString(), _columnDataProviderType.ToString());
            _languageReservedWordValues = this.LoadReservedWordValues(_columnLanguageType.ToString());
        }
示例#5
0
        public Generator(string connectionString, string outputFolder, DALType dalType, 
            ColumnLanguageType columnLanguageType, ColumnDataProviderType columnDataProviderType)
        {
            _connectionString = connectionString;
            _outputFolder = outputFolder;
            _dalType = dalType;
            _columnLanguageType = columnLanguageType;
            _columnDataProviderType = columnDataProviderType;

            _columnLanguageTypeValues = this.LoadColumnLanguageTypeValues(_dalType.ToString(), _columnLanguageType.ToString());
            _columnDataProviderTypeValues = this.LoadColumnDataProviderTypeValues(_dalType.ToString(), _columnDataProviderType.ToString());
            _languageReservedWordValues = this.LoadReservedWordValues(_columnLanguageType.ToString());
        }
示例#6
0
        public Generator(string connectionString, string outputFolder, DALType dalType,
                         ColumnLanguageType columnLanguageType, ColumnDataProviderType columnDataProviderType)
        {
            _connectionString       = connectionString;
            _outputFolder           = outputFolder;
            _dalType                = dalType;
            _columnLanguageType     = columnLanguageType;
            _columnDataProviderType = columnDataProviderType;

            _columnLanguageTypeValues     = this.LoadColumnLanguageTypeValues(_dalType.ToString(), _columnLanguageType.ToString());
            _columnDataProviderTypeValues = this.LoadColumnDataProviderTypeValues(_dalType.ToString(), _columnDataProviderType.ToString());
            _languageReservedWordValues   = this.LoadReservedWordValues(_columnLanguageType.ToString());
        }
示例#7
0
文件: Factory.cs 项目: sgww/cozy
        public static INoteDAL GetNoteDAL(DALType dalType = DALType.Defualt)
        {
            switch (dalType)
            {
            case DALType.HttpAPI:
                return(new HttpApi.NoteDAL());

            case DALType.Native:
                return(new Native.NoteDAL());

            default:
                return(new Native.NoteDAL());
            }
        }
        private static IDataModelAccessLayerFactory GetFactory(DALType dalType)
        {
            switch (dalType)
            {
            case DALType.Direct:
                return(new DirectPropertyCallDALFactory());

            case DALType.Reflective:
                return(new ReflectiveDALFactory());

            default:
                throw new NotSupportedException($"No supported DAL Factory of type: {dalType}");
            }
        }
示例#9
0
        public static int UpdateProductType(int ProductTypeId, string ProductTypeName, ref List <string> errors)
        {
            if (ProductTypeId <= 0 || ProductTypeId > DALType.ReadProductTypeList(ref errors).Count)
            {
                errors.Add("Invalid ProductType id");
            }

            if (errors.Count > 0)
            {
                return(-1);
            }

            return(DALType.UpdateProductType(ProductTypeId, ProductTypeName, ref errors));
        }
示例#10
0
        public static ProductTypeInfo ReadProductType(int ProductTypeId, ref List <string> errors)
        {
            if (ProductTypeId <= 0 || ProductTypeId > DALType.ReadProductTypeList(ref errors).Count)
            {
                errors.Add("Invalid ProductType id");
            }

            if (errors.Count > 0)
            {
                return(null);
            }

            return(DALType.ReadProductTypeDetail(ProductTypeId, ref errors));
        }
示例#11
0
        public void ReadAllProductTypeTest()
        {
            List <string>          errors           = new List <string>(); // TODO: Initialize to an appropriate value
            List <string>          errorsExpected   = new List <string>(); // TODO: Initialize to an appropriate value
            List <ProductTypeInfo> ProductTypeList1 = DALType.ReadProductTypeList(ref errors);
            List <ProductTypeInfo> ProductTypeList2 = DALType.ReadProductTypeList(ref errors);

            Assert.AreEqual(ProductTypeList1.Count, ProductTypeList2.Count);
            Assert.AreEqual(errors.Count, 0);
            for (int i = 0; i < ProductTypeList1.Count; i++)
            {
                Assert.AreEqual(ProductTypeList1[i].product_type_id, ProductTypeList2[i].product_type_id);
                Assert.AreEqual(ProductTypeList1[i].product_type_name, ProductTypeList2[i].product_type_name);
            }
        }
示例#12
0
        public void CreateProductTypeTest()
        {
            Random        rand = new Random();
            string        product_type_name = "extremely hot sweater " + rand.Next(10000);
            List <string> errors            = new List <string>();
            int           result            = DALType.CreateProductType(product_type_name, ref errors);

            Assert.AreEqual(0, errors.Count);
            Assert.AreNotEqual(-1, result);

            ProductTypeInfo verifyType = DALType.ReadProductTypeDetail(result, ref errors);

            Assert.AreEqual(0, errors.Count);

            Assert.AreEqual(result, verifyType.product_type_id);
            Assert.AreEqual(product_type_name, verifyType.product_type_name);
        }
示例#13
0
        public void UpdateProductTypeTest()
        {
            int             myId   = 1;
            Random          rand   = new Random();
            ProductTypeInfo type   = new ProductTypeInfo(myId, "extremely hot sweater " + rand.Next(10000));
            List <string>   errors = new List <string>();
            int             result = DALType.UpdateProductType(type.product_type_id, type.product_type_name, ref errors);

            Assert.AreEqual(0, errors.Count);
            Assert.AreNotEqual(-1, result);

            ProductTypeInfo verifyType = DALType.ReadProductTypeDetail(myId, ref errors);

            Assert.AreEqual(0, errors.Count);

            Assert.AreEqual(type.product_type_id, verifyType.product_type_id);
            Assert.AreEqual(type.product_type_name, verifyType.product_type_name);
        }
示例#14
0
        public static IRepositoryDAL <T> CreateDAL <T>(DALType type)
        {
            switch (type)
            {
            case DALType.ADOSQL:
                IRepositoryDAL <CustomerDbObject> adoSql = new CustomerSQLDAL(GlobalConnectionString.ConnString);
                adoSql.SetUnitWork(new SQLUnitOfWork(GlobalConnectionString.ConnString));
                IRepositoryDAL <T> valSQL = adoSql as IRepositoryDAL <T>;   // here cast T into AbsSimpleCustomerInfo. Bad idea
                if (valSQL == null)
                {
                    throw new ArgumentNullException("Cannot convert IRepositoryDAL<CustomerDbObject> to IRepositoryDAL<T>");
                }
                return(valSQL);

            case DALType.ADOOLEDB:
                IRepositoryDAL <CustomerDbObject> adoOleDb = new CustomerOLEDAL(GlobalConnectionString.ConnString);
                adoOleDb.SetUnitWork(new OLEUnitIOfWork(GlobalConnectionString.ConnString));
                IRepositoryDAL <T> valOleDb = adoOleDb as IRepositoryDAL <T>;
                if (valOleDb == null)
                {
                    throw new ArgumentNullException("Cannot convert IRepositoryDAL<CustomerDbObject> to IRepositoryDAL<T>");
                }
                return(valOleDb);

            case DALType.EF:
                CustomerEFDAL ef = new CustomerEFDAL(GlobalConnectionString.ConnString);
                ef.SetUnitWork(new EFUnitOfWork(GlobalConnectionString.ConnString));
                IRepositoryDAL <T> valEF = ef as IRepositoryDAL <T>;
                if (valEF == null)
                {
                    throw new ArgumentNullException("Cannot convert IRepositoryDAL<CustomerDbObject> to IRepositoryDAL<T>");
                }
                return(valEF);

            default:
                throw new ArgumentException("Don't know what type of DALType");
            }
        }
示例#15
0
        public static IRepositoryDAL <CustomerDbObject> CreateCustomerDAL(DALType type)
        {
            switch (type)
            {
            case DALType.ADOSQL:
                CustomerSQLDAL sqlDAL = new CustomerSQLDAL(GlobalConnectionString.ConnString);
                //sqlDAL.SetUnitWork(new SQLUnitOfWork(GlobalConnectionString.ConnString));
                return(sqlDAL);

            case DALType.ADOOLEDB:
                CustomerOLEDAL oleDAL = new CustomerOLEDAL(GlobalConnectionString.ConnString);
                //oleDAL.SetUnitWork(new OLEUnitIOfWork(GlobalConnectionString.ConnString));
                return(oleDAL);

            case DALType.EF:
                CustomerEFDAL efDal = new CustomerEFDAL(GlobalConnectionString.ConnString);
                //efDal.SetUnitWork(new EFUnitOfWork(GlobalConnectionString.ConnString));
                return(efDal);

            default:
                throw new ArgumentException("Don't know what type of DALType");
            }
        }
示例#16
0
 public DALException(DALType type)
 {
     Type = type;
 }
示例#17
0
 public DALException(DALType type, string message, Exception inner) : base(message, inner)
 {
     Type = type;
 }
示例#18
0
 public DALException(DALType type, string message) : base(message)
 {
     Type = type;
 }
示例#19
0
 public static List <ProductTypeInfo> ReadAllProductType(ref List <string> errors)
 {
     return(DALType.ReadProductTypeList(ref errors));
 }