我以前没有使用过 MyGeneration ,但您可以使用CodeGenerator轻松完成此操作。模板看起来像这样:
XSL 模板
<xsl:stylesheet version="1.0" xmlns:P="http://Schemas.QuantumConceptsCorp.com/CodeGenerator/Project.xsd" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xdt="http://www.w3.org/2005/xpath-datatypes">
<xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
<xsl:template match="P:Project">
<xsl:text>
namespace </xsl:text>
<xsl:value-of select="@RootNamespace"/>
<xsl:text>.DataObjects
{</xsl:text>
<xsl:for-each select="P:TableMappings/P:TableMapping[@Exclude='false']">
<xsl:text>
public partial class </xsl:text>
<xsl:value-of select="@ClassName"/>
<xsl:text>
{
private string TableName { get { return "</xsl:text>
<xsl:value-of select="@ClassName"/>
<xsl:text>"; } }
}
</xsl:text>
</xsl:template>
</xsl:stylesheet>
结果
namespace [Your.Namespace]
{
public class [TableName1]
{
public string TableName { get { return "[TableName1]"; } }
}
//...other tables
public class [TableNameN]
{
public string TableName { get { return "[TableNameN]"; } }
}
}
编辑:您还可以让它为每个文件输出一个表 - 听起来这就是您所追求的。