TableCraft是一个通用、可拓展的解析配置源文件,生成配置描述文件与客制化配置读取代码解决方案。
项目提供了一个.NET6运行时库,同时也提供了一个基于此库的命令行工具,与一个基于此库的Avalonia可视化编辑器作为使用范例。
*运行设备需要安装.NET 6.0
使用运行时库TableCraft.Core需要配置libenv.json
文件,并在使用前通过接口TableCraft.Core.Configuration.ReadConfigurationFromJson
进行初始化
{
// 规定数值类型
"DataValueType": ["int", "uint", "float", "boolean", "string"],
// 规定集合类型
"DataCollectionType": ["none", "array"],
// 规定可用的字段标签
"AttributeTag": ["primary", "label1", "label2"],
// TableCraft默认使用UTF8编码,在此指定是否需要BOM头
"UTF8BOM": false,
// 对csv类型数据源文件,规定字段名所在的行数,与注释所在的行数(若不存在则填-1)
"CsvSource":{
"HeaderLineIndex": 0,
"CommentLineIndex": 1
},
// 规定各种导出的代码途径
"ConfigUsageType":{
"usage0":{
// 用于生成代码的T4模板文件,此文件需要放在可执行文件同级Templates目录下
"CodeTemplateName": "usage0-template.tt",
// 生成文件的类型,此例生成的文件为c#代码
"TargetFileType": ".cs",
// 生成文件名的格式字符串,若此字符串中包含文件类型,将被TargetFileType替换
"OutputFormat": "{0}_base"
}
},
// 导出途径组,用于同时导出多种途径
"ConfigUsageGroup":{
"group0":[
"usage0",
"usage1"
]
}
}
appsettings.json
中配置了一些重要的文件目录,也用于保存版本控制相关的用户信息
{
// 配置文件所在的共同根目录,用于读取配置文件
"ConfigHomePath": "",
// 配置描述文件的共同根目录,用于保存描述文件
"JsonHomePath": "",
// 生成目录
"ExportPath": {
"usage0": ""
},
// Perforce版本控制相关信息,不需要在此处手动配置,在应用内编辑后进行保存即可
"P4Config": {
"P4PORT": "",
"P4USER": "",
"P4CLIENT": "",
"P4PASSWDBASE64": ""
}
}
按照下述步骤操作前,请先保证上述的两个json文件已配置正确;若存在错误配置,可在Editor可执行文件同级Logs目录下查看具体问题。
Copyright (c) 2023 - Boming Chen