如何使用模板生成解决方案?

时间:2012-08-10 09:53:15

标签: c# .net

我在这里遇到了一些麻烦。

我希望能够使用类似于VS2010使用的模板生成C#项目(和解决方案)(比如说C#控制台应用程序)。 基本上我想要一个方法GenerateConsoleApplication就是这样做的。但是因为我需要生成其中的几个,所以我想使用一个模板来填充program.cs类的Main方法,该方法将与.csproj和app.xml文件一起生成。

public void GenerateConsoleApplication()
{
    var projectName = "MyConsoleApplication";
    var projectLocation = "C:\temp";

    // what goes here so that it creates a solution Visual Studio that I could use ?
}

我查看了VS2010使用的项目模板来生成C#控制台应用程序,我想我可以根据自己的需要对其进行修改。但是我不知道我需要编写什么(代码明智)来使用所述模板并生成新解决方案的所有文件。 有谁知道怎么做?或者如果可能的话?

我知道我可以写csproj文件和其他文件,但我认为模板可以更容易地进行更改。

1 个答案:

答案 0 :(得分:1)

刚刚找到了我需要做的事情。

问题归结为解析模板文件。 一旦我得到解析器,我就可以用适当的值替换标签。我想使用Visual Studio的解析器来做到这一点,并稍微修改它已经使用的模板,但这是不可能的。

因此,必须编写自己的解析器并使用它来生成文件。 然后可以使用Regex用Regex.Replace(String,String,MatchEvaluator)方法替换模板文件的标签。