Ejemplo n.º 1
0
        /// <summary>
        /// 获取 model .cs 文件源代码
        /// </summary>
        /// <param name="table">model名称</param>
        /// <param name="columns">表列信息</param>
        /// <param name="namespace">model 命名空间</param>
        /// <returns>model .cs 文件源代码</returns>
        public virtual string GetModelCode(TableInfoModel table, List <ColumnInfoModel> columns, string @namespace)
        {
            if (string.IsNullOrEmpty(table.Name))
            {
                throw new ArgumentNullException("tableName");
            }
            if (columns == null)
            {
                throw new ArgumentNullException("columns");
            }
            if (string.IsNullOrEmpty(@namespace))
            {
                throw new ArgumentNullException("namespace");
            }
            StringBuilder propertysString = new StringBuilder();

            if (columns != null && columns.Count > 0)
            {
                foreach (var column in columns)
                {
                    propertysString.Append(this.GetPropertyCode(column));
                    propertysString.Append("\r\n\r\n");
                }
                propertysString.Remove(propertysString.Length - 4, 4);
            }

            return(string.Format(GetModelFormat(), @namespace, table, this.GetModelName(table.Name), propertysString.ToString(), table.Comment ?? ""));
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 创建数据库表
 /// </summary>
 /// <param name="table">表名</param>
 /// <param name="columns">列信息</param>
 /// <returns>是否成功</returns>
 public abstract bool CreateTable(TableInfoModel table, List <ColumnInfoModel> columns);