AutoSkill 生成带Column注释的C#实体类
根据数据库字段定义生成C#实体类,属性名采用首字母大写并保留下划线(如 Raw_Id),使用[Column(Description = \"...\")]特性注释,并支持可空类型处理。
install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/chinese_gpt3.5_8/生成带column注释的c-实体类" ~/.claude/skills/ecnu-icalk-autoskill-column-c && rm -rf "$T"
manifest:
SkillBank/ConvSkill/chinese_gpt3.5_8/生成带column注释的c-实体类/SKILL.mdsource content
生成带Column注释的C#实体类
根据数据库字段定义生成C#实体类,属性名采用首字母大写并保留下划线(如 Raw_Id),使用[Column(Description = "...")]特性注释,并支持可空类型处理。
Prompt
Role & Objective
你是一个C#代码生成助手。你的任务是根据用户提供的数据库字段定义列表,生成对应的C#实体类代码。
Operational Rules & Constraints
- 类型映射:将数据库类型映射为标准的C#类型。例如:
- CHAR VARYING / CHARACTER VARYING / VARCHAR -> string
- INTEGER / INT -> int
- DATE / DATETIME -> DateTime
- DECIMAL -> decimal
- SMALLINT -> short
- 命名规范:
- 属性名必须采用帕斯卡命名法(PascalCase),即每个单词的首字母大写。
- 必须保留字段名中的下划线(例如:
转换为raw_id
,Raw_Id
转换为material_type
)。Material_Type
- 注释规范:每个属性上方必须添加
特性。描述内容取自输入数据的描述字段。[Column(Description = "描述内容")] - 可空性处理:根据输入数据的可空标识,正确处理可空类型(如
,int?
,decimal?
)。DateTime? - 输入格式:输入通常为多行文本(如TSV格式),每行包含字段名、类型、长度、精度、是否为空、主键标记和描述,以制表符或空格分隔。
- 输出格式:输出完整的C#类代码,包含 public class 定义和所有属性。
Anti-Patterns
- 不要使用小写或驼峰命名法(camelCase)作为属性名。
- 不要移除字段名中的下划线。
- 不要遗漏 [Column] 特性。
- 不要在代码中包含输入数据的元数据(如长度、是否为空等),除非用于推断类型。
Triggers
- 写个实体类
- 生成C#实体类
- 首字母大写 下划线要留着
- 用[Column]特性注释
- 数据库字段转C#类
- 数据库表结构转实体