Ejemplo n.º 1
0
 /// <summary>
 /// Warning: this method uses System.Windows.Forms.MessageBox.
 /// </summary>
 /// <param name="element"></param>
 static public void GetTableElementDictionary(this TableElement element)
 {
     element.conversionElements.Clear();
     // ac_table
     element.conversionElements.Add("TableType", element.DbType);
     element.conversionElements.Add("tabletype", string.Format("{0}", element.DbType).ToLower());
     // see the primary key related tags below
     element.conversionElements.Add("PK", element.PrimaryKey);
     element.conversionElements.Add("pk", element.PrimaryKey == null ? string.Empty : element.PrimaryKey.ToLower());
     element.conversionElements.Add("PrimaryKey", element.PrimaryKey == null ? string.Empty : element.PrimaryKey);
     element.conversionElements.Add("PrimaryKeyCleanC", element.PrimaryKey == null ? string.Empty : element.PrimaryKey.ToStringCapitolize().Clean());
     element.conversionElements.Add("primarykey", element.PrimaryKey == null ? string.Empty : element.PrimaryKey.ToLower());
     //
     element.conversionElements.Add("Table", element.Name.Replace("-", "_"));
     //
     element.conversionElements.Add("TableName", element.Name);
     element.conversionElements.Add("tablename", element.Name.ToLower());
     //
     element.conversionElements.Add("TableNameC", element.Name.ToStringCapitolize());
     element.conversionElements.Add("TableNameClean", element.FriendlyName);
     element.conversionElements.Add("tablenameclean", element.FriendlyName.ToLower());
     element.conversionElements.Add("TableNameCClean", element.FriendlyName.ToStringCapitolize());
     //
     element.conversionElements.Add("TableCleanName", element.Name.Clean());
     element.conversionElements.Add("TableCleanNameC", element.Name.Clean().ToStringCapitolize());
     //
     element.conversionElements.Add("AdapterNs", element.NsAdapter);
     element.conversionElements.Add("AdapterT", element.TAdapter);
     element.conversionElements.Add("AdapterNsT", element.TypeAdapter);
     //
     element.conversionElements.Add("CommandNs", element.NsCommand);
     element.conversionElements.Add("CommandT", element.TCommand);
     element.conversionElements.Add("CommandNsT", element.TypeCommand);
     //
     element.conversionElements.Add("ConnectionNs", element.NsConnection);
     element.conversionElements.Add("ConnectionT", element.TConnection);
     element.conversionElements.Add("ConnectionNsT", element.TypeConnection);
     //
     element.conversionElements.Add("ParameterT", element.TParameter);
     //
     element.conversionElements.Add("ReaderNs", element.NsReader);
     element.conversionElements.Add("ReaderT", element.TReader);
     element.conversionElements.Add("ReaderNsT", element.TypeReader);
     //
     element.conversionElements.Add("Date", DateTime.Now.ToString("MM/dd/yyyy"));
     element.conversionElements.Add("Time", DateTime.Now.ToString("hh:mm.ss tt"));
     element.conversionElements.Add("DateTime", string.Format("{0:MM/dd/yyyy} {1:hh:mm.ss tt}", DateTime.Now, DateTime.Now));
     //
     if (element.PrimaryKey == null)
     {
         System.Windows.Forms.MessageBox.Show("Table must provide a primary key", "Please check the table.");
         return;
     }
     else if (element.PrimaryKey != string.Empty)
     {
         element.conversionElements.Add("PKDataName", element.PrimaryKeyElement.DataName);
         element.conversionElements.Add("PKDataType", element.PrimaryKeyElement.DataType);
         element.conversionElements.Add("PKDataTypeNative", element.PrimaryKeyElement.DataTypeNative);
         element.conversionElements.Add("PKNativeNullType", NullableTypeUtility.GetNativeNullType(element.PrimaryKeyElement["Native"].ToString()));
         element.conversionElements.Add("PKNativeNullValue", NullableTypeUtility.IsNativeNullable(element.PrimaryKeyElement["Native"].ToString()) ? ".Value" : "");
         //				Add("PKDataTypeNative",		PrimaryKeyElement.DataTypeNative);
         element.conversionElements.Add("PKDescription", element.PrimaryKeyElement.Description);
         //
         element.conversionElements.Add("PKDataNameC", element.PrimaryKeyElement.DataName.ToStringCapitolize());
         element.conversionElements.Add("PKCleanName", element.PrimaryKeyElement.DataName.Replace("-", "_"));
         element.conversionElements.Add("PKCleanName,Nodash", element.PrimaryKeyElement.DataName.Clean());
         element.conversionElements.Add("PKFriendlyName", element.PrimaryKeyElement.DataName.Clean());
         element.conversionElements.Add("PKFriendlyNameC", element.PrimaryKeyElement.DataName.Clean().ToStringCapitolize());
     }
     else
     {
         Global.statR(ResourceUtil.ResourceManager.GetString("TableElement_PrimaryKeyNotFound"), element.Name);
     }
 }
Ejemplo n.º 2
0
        virtual public void InitializeDictionary()
        {
            conversionElements.Clear();

            // ac_table

            //
            #region Table Type
            Add(StrKeys.TableType, DbType);
            Add(StrKeys.tabletype, string.Format("{0}", DbType).ToLower());
            #endregion
            //
            #region Primary Key
            // see the primary key related tags below
            Add(StrKeys.PK, PrimaryKey);
            Add(StrKeys.pk, PrimaryKey == null ? string.Empty : PrimaryKey.ToLower());
            Add(StrKeys.PrimaryKey, PrimaryKey ?? string.Empty);
            Add(StrKeys.PrimaryKeyCleanC, PrimaryKey == null ? string.Empty : PrimaryKey.ToStringCapitolize().Clean());
            Add(StrKeys.primarykey, PrimaryKey == null ? string.Empty : PrimaryKey.ToLower());
            #endregion
            //
            #region TableName
            //
            Add(StrKeys.Name, Name);
            Add(StrKeys.Table, Name.Replace("-", "_"));

            try {
                Add(StrKeys.TableAlias, View != null ? View.Alias : Link != null ? Link.Alias : Name);
                Add(StrKeys._TableAlias, View != null ? View.Alias : Link != null ? Link.Alias : Name.Replace("-", "_"));
                Add(StrKeys.tablealias, (conversionElements[StrKeys.TableAlias] as string).ToLower());
                //
                Add(StrKeys.TableAliasC, conversionElements[StrKeys.TableAlias].ToStringCapitolize());
                Add(StrKeys.FriendlyTableAlias, (conversionElements[StrKeys.TableAlias] as string).Clean());
                Add(StrKeys.TableAliasClean, conversionElements[StrKeys.FriendlyTableAlias]);
                Add(StrKeys.tablealiasclean, (conversionElements[StrKeys.TableAlias] as string).ToLower());
                Add(StrKeys.TableAliasCClean, conversionElements[StrKeys.TableAlias].ToStringCapitolize());
                Add(StrKeys.TABLEALIASCLEAN, (conversionElements[StrKeys.TableAlias] as string).ToUpper());
                //
//				Add("AliasCClean", conversionElements["FriendlyAlias"].ToStringCapitolize());
                //
                Add(StrKeys.TableAliasCName, (conversionElements[StrKeys.TableAlias] as string).Clean());
                Add(StrKeys.TableAliasCNameC, (conversionElements[StrKeys.TableAliasCName] as string).ToStringCapitolize());
            } catch (Exception error) {
                Logger.Warn("Parse Exception", error.Message);
            }

            //
            Add(StrKeys.TableName, Name);
            Add(StrKeys.tablename, Name.ToLower());
            //
            Add(StrKeys.TableNameC, Name.ToStringCapitolize());
            Add(StrKeys.TableNameClean, FriendlyName);
            Add(StrKeys.tablenameclean, FriendlyName.ToLower());
            Add(StrKeys.TableNameCClean, FriendlyName.ToStringCapitolize());
            //
            Add(StrKeys.TableCleanName, Name.Clean());
            Add(StrKeys.TableCleanNameC, Name.Clean().ToStringCapitolize());
            #endregion
            //
            #region Namespace Types
            Add(StrKeys.AdapterNs, NsAdapter);
            Add(StrKeys.AdapterT, TAdapter);
            Add(StrKeys.AdapterNsT, TypeAdapter);
            //
            Add(StrKeys.CommandNs, NsCommand);
            Add(StrKeys.CommandT, TCommand);
            Add(StrKeys.CommandNsT, TypeCommand);
            //
            Add(StrKeys.ConnectionNs, NsConnection);
            Add(StrKeys.ConnectionT, TConnection);
            Add(StrKeys.ConnectionNsT, TypeConnection);
            //
            Add(StrKeys.ParameterT, TParameter);
            //
            Add(StrKeys.ReaderNs, NsReader);
            Add(StrKeys.ReaderT, TReader);
            Add(StrKeys.ReaderNsT, TypeReader);
            #endregion
            //
            GeneratorTypeProvider.GetTypes <GeneratorDateTimeFieldProvider>(conversionElements);

            #region Primary Key Automated Reference (NOT FOR VIEWS)
            //
            if (PrimaryKey == null)
            {
                ErrorMessage.Show("Table must provide a primary key", "Please check the table.");
                return;
            }
            else if (PrimaryKey != string.Empty && PrimaryKey != "%PKUNKNOWN%")
            {
                Add(StrKeys.PKDataName, PrimaryKeyElement.DataName);
                Add(StrKeys.PKDataType, PrimaryKeyElement.DataType);
                Add(StrKeys.PKDataTypeNative, PrimaryKeyElement.DataTypeNative);
                Add(StrKeys.PKNativeNullType, NullableTypeUtility.GetNativeNullType(PrimaryKeyElement[StrKeys.Native].ToString()));
                Add(StrKeys.PKNativeIsNullable, PrimaryKeyElement.IsNullable);
                Add(StrKeys.PKNativeNullValue, NullableTypeUtility.IsNativeNullable(PrimaryKeyElement[StrKeys.Native].ToString()) ? ".Value" : "");
                Add(StrKeys.PKNativeNullValueGo, PrimaryKeyElement.Params[StrKeys.NativeNullTypeGo].ToString());
                Add(StrKeys.PKNativeNullValueGoAddress, PrimaryKeyElement.IsNullable ? "&" : string.Empty);
                Add(StrKeys.PKNativeNullValueGoPointer, PrimaryKeyElement.IsNullable ? "*" : string.Empty);
//				Add("PKDataTypeNative",PrimaryKeyElement.DataTypeNative);
                Add(StrKeys.PKDescription, PrimaryKeyElement.Description);
                //
                Add(StrKeys.PKDataNameC, PrimaryKeyElement.DataName.ToStringCapitolize());
                Add(StrKeys.PKCleanName, PrimaryKeyElement.DataName.Replace("-", "_"));
                Add(StrKeys.PKCleanName_Nodash, PrimaryKeyElement.DataName.Clean());
                Add(StrKeys.PKFriendlyName, PrimaryKeyElement.DataName.Clean());
                Add(StrKeys.PKFriendlyNameC, PrimaryKeyElement.DataName.Clean().ToStringCapitolize());
            }
            else
            {
                Logger.Warn("TableElement.InitializeDictionary", Gen.Messages.TableElement_PrimaryKeyNotFound, Name);
            }
            #endregion

            if (Transform != null)
            {
                Transform(conversionElements);
            }
        }