public static bool IsBasicType(object obj) { //MemberInfo[] myMemberInfo; Type objType = obj.GetType(); Type baseType = objType.BaseType; DBtypes DBtypes = new DBtypes(); Type myDBTypes = DBtypes.GetType(); if (baseType != null) { FieldInfo[] DBTypesInfo = myDBTypes.GetFields(); int i; int iCount = DBTypesInfo.Count(); for (i = 0; i < iCount; i++) { if (DBTypesInfo[i].FieldType == baseType) { if (baseType == typeof(DB_Int32)) { return true; } else if (baseType == typeof(DB_Int64)) { return true; } else if (baseType == typeof(DB_Money)) { return true; } else if (baseType == typeof(DB_decimal2)) { return true; } else if (baseType == typeof(DB_Percent)) { return true; } else if (baseType == typeof(DB_smallInt)) { return true; } else if (baseType == typeof(DB_bit)) { return true; } else if (baseType == typeof(DB_DateTime)) { return true; } else if (baseType == typeof(DBTypes.DB_varbinary_max)) { return true; } else if (baseType == typeof(DB_varchar_max)) { return true; } else if (baseType == typeof(DB_varchar_2000)) { return true; } else if (baseType == typeof(DB_varchar_264)) { return true; } else if (baseType == typeof(DB_varchar_250)) { return true; } else if (baseType == typeof(DB_varchar_64)) { return true; } else if (baseType == typeof(DB_varchar_50)) { return true; } else if (baseType == typeof(DB_varchar_45)) { return true; } else if (baseType == typeof(DB_varchar_32)) { return true; } else if (baseType == typeof(DB_varchar_25)) { return true; } else if (baseType == typeof(DB_varchar_10)) { return true; } else if (baseType == typeof(DB_varchar_5)) { return true; } else if (baseType == typeof(DB_Image)) { return true; } else if (baseType == typeof(DB_Document)) { return true; } else { return false; } } } return false; //string tableName = objType.ToString(); //int ij = tableName.IndexOf('.'); //if (ij >= 0) //{ // tableName = tableName.Substring(ij + 1); //} //string csError = "Program Error !!! NO DB Basic Types Found !!!\n Posible cause of this error is that table of type:" + objType.ToString() + " is not added to m_DBTables.items.\n There is no source line in \"MyDataBase.TableDefinitions.cs\"\n with :m_DBTables.items.Add(tbl_" + tableName + ")"; //Error.Show(csError, "Program Error!"); //return false; } else { //string csError = "ERROR !!! NO base Type !!!"; //Error.Show(csError, "Program Error!"); return false; } }
public bool IsNumber() { //MemberInfo[] myMemberInfo; Type objType = obj.GetType(); Type baseType = objType.BaseType; DBtypes DBtypes = new DBtypes(); Type myDBTypes = DBtypes.GetType(); if (baseType != null) { string csError = null; if (DBtypesFunc.IsNumber(baseType, myDBTypes, ref csError)) { if (csError != null) { Error.Show(csError, "Program Error!"); return false; } else { return true; } } else { if (csError != null) { Error.Show(csError, "Program Error!"); } return false; } } else { return false; } }
public static string GetBasicTypeSQLite(Object obj) { //MemberInfo[] myMemberInfo; Type objType = obj.GetType(); Type baseType = objType.BaseType; DBtypes DBtypes = new DBtypes(); Type myDBTypes = DBtypes.GetType(); if (obj.GetType() == typeof(DBm_Image)) { return "DBm_Image"; } if (baseType != null) { FieldInfo[] DBTypesInfo = myDBTypes.GetFields(); int i; int iCount = DBTypesInfo.Count(); for (i = 0; i < iCount; i++) { if (DBTypesInfo[i].FieldType == baseType) { if (baseType == typeof(DB_Int32)) { return "INT"; } else if (baseType == typeof(DB_Int64)) { return "INTEGER"; } else if (baseType == typeof(DB_Money)) { return "DECIMAL(18,5)"; } else if (baseType == typeof(DB_decimal2)) { return "DECIMAL(18,5)"; } else if (baseType == typeof(DB_Percent)) { return "DECIMAL(18,5)"; } else if (baseType == typeof(DB_smallInt)) { return "INT"; } else if (baseType == typeof(DB_bit)) { return "BIT"; } else if (baseType == typeof(DB_DateTime)) { return "DATETIME"; } else if (baseType == typeof(DBTypes.DB_varbinary_max)) { return "BLOB"; } else if (baseType == typeof(DB_varchar_max)) { return "TEXT"; } else if (baseType == typeof(DB_varchar_2000)) { return "varchar(2000)"; } else if (baseType == typeof(DB_varchar_264)) { return "varchar(264)"; } else if (baseType == typeof(DB_varchar_250)) { return "varchar(250)"; } else if (baseType == typeof(DB_varchar_64)) { return "varchar(64)"; } else if (baseType == typeof(DB_varchar_50)) { return "varchar(50)"; } else if (baseType == typeof(DB_varchar_45)) { return "varchar(45)"; } else if (baseType == typeof(DB_varchar_32)) { return "varchar(32)"; } else if (baseType == typeof(DB_varchar_25)) { return "varchar(25)"; } else if (baseType == typeof(DB_varchar_10)) { return "varchar(10)"; } else if (baseType == typeof(DB_varchar_5)) { return "varchar(5)"; } else if (baseType == typeof(DB_Image)) { return "BLOB"; } else if (baseType == typeof(DB_Document)) { return "BLOB"; } else { return "!! NOT BASIC TYPE !!"; } } } string tableName = objType.ToString(); int ij = tableName.IndexOf('.'); if (ij >= 0) { tableName = tableName.Substring(ij + 1); } string csError = "Program Error !!! NO DB Basic Types Found !!!\n Posible cause of this error is that table of type:" + objType.ToString() + " is not added to m_DBTables.items.\n There is no source line in \"MyDataBase.TableDefinitions.cs\"\n with :m_DBTables.items.Add(tbl_" + tableName + ")"; LogFile.Error.Show(csError, "Program Error!"); return csError; } else { return "ERROR !!! NO base Type !!!"; } }
public Type BasicType() { //MemberInfo[] myMemberInfo; Type objType = obj.GetType(); Type baseType = objType.BaseType; DBtypes xDBtypes = new DBtypes(); Type myDBTypes = xDBtypes.GetType(); if (baseType != null) { string csError = ""; Type bRetType = DBtypesFunc.BasicType(baseType, myDBTypes, ref csError); if (bRetType != null) { return bRetType; } else { Error.Show(csError, "Program Error!"); return null; } } else { return null; } }