/// <summary> /// 将<see cref="TableColumn"/>对象用模板解析后的内容 /// </summary> /// <param name="template">Mapping类中的字段生成模板</param> /// <param name="column">数据表<see cref="TableColumn"/>字段信息</param> /// <returns></returns> private string ResolvColumn(string template, TableColumn column) { string result = string.Empty; ColumnResolveContext context = new ColumnResolveContext(template, column); List <ColumnExpression> list = new List <ColumnExpression>(); list.Add(new MappingPropertyNameExpression()); list.Add(new ColumnNameExpression()); list.Add(new HasColumnTypeExpression()); list.Add(new IsRequiredExpression()); list.Add(new IsOptionalExpression()); list.Add(new IsUnicodeExpression()); list.Add(new HasPrecisionExpression()); list.Add(new MaxLengthExpression()); list.Add(new UniqueKeyGeneratedExpression()); foreach (var exp in list) { exp.Interpret(context); } return(context.Output); }
public abstract void Interpret(ColumnResolveContext context);