/// <summary> /// クラスソースを作成する /// </summary> /// <param name="info"></param> /// <param name="table"></param> /// <param name="filePath"></param> /// <returns></returns> private string CreateSourceCode(SourceGenerateTemplate.TemplatesRow info, TableList table, string filePath) { string folder = System.IO.Path.GetFileName(filePath).ToLower(); //Create Class string classTemp = info.ClassTemplace; Dictionary <string, string> replaceKeys = new Dictionary <string, string>(); var columns = LinqSqlHelp.GetTableLayout(table.TableName); replaceKeys.Add("@Folder", folder); replaceKeys.Add("@TableNameCamelU", this.GetCamelName(table.TableName, true)); replaceKeys.Add("@TableNameCamelL", this.GetCamelName(table.TableName, false)); replaceKeys.Add("@TableName", table.TableName); replaceKeys.Add("@TableDisplayName", table.TableDisplayName); replaceKeys.Add("@TableComment", table.Comment); replaceKeys.Add("@Coulmns", this.GetColumns(info, columns)); replaceKeys.Add("@KEY", this.GetKeys(info, columns)); return(Replacekeyword(classTemp, replaceKeys)); }
private string GetKeys(SourceGenerateTemplate.TemplatesRow info, IList <TableLayoutInfo> columns) { StringBuilder sb = new StringBuilder(); sb.Append("@Key("); int index = 0; foreach (var column in columns) { if (column.IsPrimaryKey) { if (index > 0) { sb.Append(","); } sb.Append(column.ColumnName); index++; } } sb.Append(")"); return(sb.ToString()); }
private string GetColumns(SourceGenerateTemplate.TemplatesRow info, IList <TableLayoutInfo> columns) { StringBuilder sb = new StringBuilder(); string[] ignoreColumns = info.GetIgnoreColumns(); foreach (var col in columns) { if (ignoreColumns.Any(x => x.Equals(col.ColumnName.ToLower(), StringComparison.CurrentCultureIgnoreCase))) { continue; } Dictionary <string, string> replaceKeys = new Dictionary <string, string>(); replaceKeys.Add("@ColumnComment", col.Comment); replaceKeys.Add("@DataType", col.GetDataTypeForJava()); replaceKeys.Add("@FieldDisplayName", col.ColumnDisplayName); replaceKeys.Add("@FieldName", col.ColumnName); replaceKeys.Add("@FieldNameCamelU", GetCamelName(col.ColumnName, true)); replaceKeys.Add("@FieldNameCamelL", GetCamelName(col.ColumnName, false)); replaceKeys.Add("@KEY", col.IsPrimaryKey? " [Key(" + col.ColumnName + ")]":""); sb.AppendLine(Replacekeyword(info.FieldTemplace, replaceKeys)); } return(sb.ToString()); }