【发布时间】:2012-02-08 02:30:38
【问题描述】:
是否已经存在一个模板/代码生成器来跟踪用户对其输出的更改?我什至不肯定这是有道理的 - 但我的太空学员认为这样的事情可能是一种有趣的变更跟踪,它比 SCM 更紧密地集成到代码中......
数据.xml
<Classes>
<Class>Class1</Class>
</Classes>
模板
<# for(var c in XDocument.Load("Data.xml").Element("Classes").Elements("Class")) { #>
class <#=c.Value#> {
public <#=c.Value#>() {
// <InsertPoint>
// </InsertPoint>
}
}
<# } #>
输出
class Class1 {
public Class1() {
// <InsertPoint>
// </InsertPoint>
}
}
用户变更
class Class1 {
public Class1() {
// <InsertPoint>
System.Console.WriteLine("I am Class1");
// </InsertPoint>
}
}
--> 模板更改为:
<# for(var c in XDocument.Load("Data.xml").Element("Classes").Elements("Class")) { #>
class <#=c.Value#> {
public <#=c.Value#>() {
// <UserInsert id="1">
System.Console.WriteLine("I am Class1");
// </UserInsert>
// <InsertPoint>
// </InsertPoint>
}
}
<# } #>
【问题讨论】:
标签: c# code-generation