Пример #1
0
        private string GetFindByColumnMethodAsyncCode(ColumnModel columnModel)
        {
            StringBuilder result = new StringBuilder();

            result.AppendFormat(CodeHelp.Tab2() + "public async Task<List<{0}>> FindBy{1}Async({2} {3})\n",
                                CodeHelp.CamelCase(_tableName),
                                CodeHelp.CamelCase(columnModel.COLUMN_NAME),
                                CodeHelp.GetCSharpTypeString(columnModel.DATA_TYPE, false),
                                CodeHelp.FirstLower(CodeHelp.CamelCase(columnModel.COLUMN_NAME)));
            result.AppendLine(CodeHelp.Tab2() + "{");
            result.AppendLine(CodeHelp.Tab3() + "using var cmd = Db.Connection.CreateCommand();");
            result.AppendFormat(CodeHelp.Tab3() + "cmd.CommandText = @\"SELECT {0} FROM `{1}` WHERE {2} = @{3}\";\n",
                                GetColumnsCode(),
                                _tableName,
                                columnModel.COLUMN_NAME,
                                CodeHelp.CamelCase(columnModel.COLUMN_NAME));
            result.AppendLine(CodeHelp.Tab3() + "cmd.Parameters.Add(new MySqlParameter");
            result.AppendLine(CodeHelp.Tab3() + "{");
            result.AppendFormat(CodeHelp.Tab4() + "ParameterName = \"@{0}\",\n",
                                CodeHelp.CamelCase(columnModel.COLUMN_NAME));
            result.AppendFormat(CodeHelp.Tab4() + "DbType = DbType.{0},\n",
                                CodeHelp.GetMySqlDBTypeString(columnModel.DATA_TYPE));
            result.AppendFormat(CodeHelp.Tab4() + "Value = {0},\n",
                                CodeHelp.FirstLower(CodeHelp.CamelCase(columnModel.COLUMN_NAME)));
            result.AppendLine(CodeHelp.Tab3() + "});");
            result.AppendLine(CodeHelp.Tab3() + "return await ReadAllAsync(await cmd.ExecuteReaderAsync());");
            result.AppendLine(CodeHelp.Tab2() + "}");
            return(result.ToString());
        }
Пример #2
0
        public string GetColumnsCode()
        {
            StringBuilder result = new StringBuilder();

            foreach (var columnModel in _columnsModels)
            {
                result.AppendFormat("{0}/// <summary>\n", CodeHelp.Tab2());
                result.AppendFormat("{0}/// {1}\n", CodeHelp.Tab2(), columnModel.COLUMN_COMMENT);
                result.AppendFormat("{0}/// </summary>\n", CodeHelp.Tab2());
                result.AppendFormat("{0}public {1} {2};\n",
                                    CodeHelp.Tab2(),
                                    CodeHelp.GetCSharpTypeString(columnModel.DATA_TYPE, columnModel.IS_NULLABLE == "YES"),
                                    CodeHelp.CamelCase(columnModel.COLUMN_NAME));
            }
            return(result.ToString());
        }