ホームページ  >  記事  >  データベース  >  CodeSmith实用技巧(八):生成的代码输出到文件中

CodeSmith实用技巧(八):生成的代码输出到文件中

WBOY
WBOYオリジナル
2016-06-07 15:10:511656ブラウズ

在 CodeSmith 中,要把生成的代码文件输出到文件中,你需要在自己的模版中继承 OutputFileCodeTemplate 类。 % @CodeTemplateLanguage = " C# " TargetLanguage = " C# " Inherits = " OutputFileCodeTemplate " Description = " Buildcustomaccesscode. " %

CodeSmith中,要把生成的代码文件输出到文件中,你需要在自己的模版中继承OutputFileCodeTemplate类。

CodeSmith实用技巧(八):生成的代码输出到文件中@ CodeTemplate Language="C#" TargetLanguage="C#" Inherits="OutputFileCodeTemplate" Description="Build custom access code." %>
CodeSmith实用技巧(八):生成的代码输出到文件中
@ Assembly Name="CodeSmith.BaseTemplates" %>

OutputFileCodeTemplate主要做两件事情:

1.它添加一个名为OutputFile的属性到你的模版中,该属性要求你必须选择一个文件;

2.模版重载了方法OnPostRender(),在CodeSmith生成代码完成后把相应的内容写入到指定的文件中去。

如果想要自定义OutputFile属性弹出的保存文件对话框,你需要在你的模版中重载OutputFile属性。例如:你希望用户选择一个.cs文件来保存生成的代码,需要在你的模版中添加如下代码:

CodeSmith实用技巧(八):生成的代码输出到文件中script runat="template">
CodeSmith实用技巧(八):生成的代码输出到文件中
// Override the OutputFile property and assign our specific settings to it.
CodeSmith实用技巧(八):生成的代码输出到文件中
[FileDialog(FileDialogType.Save, Title="Select Output File", Filter="C# Files (*.cs)|*.cs", DefaultExtension=".cs")]
CodeSmith实用技巧(八):生成的代码输出到文件中
public override string OutputFile
CodeSmith实用技巧(八):生成的代码输出到文件中CodeSmith实用技巧(八):生成的代码输出到文件中
CodeSmith实用技巧(八):生成的代码输出到文件中{
CodeSmith实用技巧(八):生成的代码输出到文件中CodeSmith实用技巧(八):生成的代码输出到文件中    
get CodeSmith实用技巧(八):生成的代码输出到文件中{return base.OutputFile;}
CodeSmith实用技巧(八):生成的代码输出到文件中CodeSmith实用技巧(八):生成的代码输出到文件中    
set CodeSmith实用技巧(八):生成的代码输出到文件中{base.OutputFile = value;}
CodeSmith实用技巧(八):生成的代码输出到文件中}

CodeSmith实用技巧(八):生成的代码输出到文件中
script>

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。