如何修改SubSonic 2.1代码生成

Ron*_*lev 2 subsonic

我想添加基本的日志记录,并对SubSonic 2.1生成的类进行一些其他微小的更改(我没有使用SubSonic 3.0 t4模板).

有没有办法在不修改SubSonic源代码的情况下执行此操作?

Ben*_*old 5

你有两个选择.您可以修改默认模板或创建自己的模板.我建议您制作自己的模板,与原始模板并排放置,然后按照以下说明生成代码.

请注意,这些步骤假定您运行了默认的SubSonic安装.换句话说,可以在c:// program files /下找到Sonic.exe和默认模板.如果没有,您当然可以在备用安装位置找到您的SubSonic文件/模板.

  1. 制作C:\ Program Files\SubSonic\SubSonic 2.1 Final\src\SubSonic\CodeGeneration\Templates中的默认模板文件夹的副本.我可能会建议命名复制的文件夹"TemplatesWithLogging".
  2. 在Visual Studio中打开aspx文件并修改您的内容.例如,我想要一个替代的C#类模板,所以我修改了CS_ClassTemplate.aspx.如果您只想更改默认模板,可以但我建议先备份.
  3. 我将假设您已熟悉SubSonic的代码生成.我个人喜欢设置Visual Studio外部工具以允许快速,预配置的重新生成.否则,可以将以下内容移植到命令行.这是外部工具设置说明:

    • 工具>外部工具>添加标题:TemplatesWithLogging

    • SubSonic Classes命令:C:\ Program Files\SubSonic\SubSonic 2.1 Final\SubCommander\sonic.exe参数:generate/out生成/命名空间NAMESPACE/server SERVER/db DATABASE,相应地替换NAMESPACE,SERVER和DATABASE.

    • 初始目录:$(ProjectDir)

    • 选中"使用输出窗口"和"提示参数".

    • 选择应用或确定

4.选择包含"Generated"文件夹和自动生成文件的项目.选择工具> TemplatesWithLogging.

你可以在这里找到更多.