当我们在visual studio中添加一个新类时,我们会得到一个模板代码
namespace MyProject
{
class Class1
{
}
}
visual studio如何生成此代码?它是否使用CodeDOM或T4Template或其他东西?
答案 0 :(得分:2)
Visual Studio有自己的project and file templates。例如,C#类文件模板包含在带有xml元数据文件和类模板的.zip文件中:
using System;
using System.Collections.Generic;
$if$ ($targetframeworkversion$ >= 3.5)using System.Linq;
$endif$using System.Text;
namespace $rootnamespace$
{
class $safeitemrootname$
{
}
}
Visual Studio在根据这些模板创建新文件时,很可能会对$ dollars之间定义的各种参数进行简单的字符串替换。
如果查看Visual Studio文件夹,可以找到包含文件和项目模板的各种.zip文件。 Visual Studio 2010的文件模板包含在父文件夹内的子文件夹中:
C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ ItemTemplates