private FileInfo CreateProjectFile(DirectoryInfo root, SolutionModel model) { string projectRoot = string.Format("{0}/{1}/", root.FullName, model.ProjectName); var directoryInfo = new DirectoryInfo(projectRoot); if (!directoryInfo.Exists) { directoryInfo.Create(); } var projectModel = new ProjectModel(model.TestProjectGuid) { ProjectAssemblyName = model.ProjectAssemblyName, ProjectName = model.ProjectName, ProjectRootNameSpace = model.ProjectRootNameSpace, TargetFramework = model.TargetFramework, ReleaseOutputPath = string.Format("../../output/Release/{0}", model.ProjectName), DebugOutputPath = string.Format("../../output/Debug/{0}", model.ProjectName), ProjectType = model.ProjectType }; projectModel.ProjectOutputType = projectModel.ProjectTypeToProjectOutputType(model.ProjectType); projectModel.AddCoreReferences(); var projectFile = new FileInfo(projectRoot + projectModel.ProjectName + ".csproj"); File.WriteAllText(projectFile.FullName, TemplateRenderer.Render(ProjectTemplate, projectModel)); return(projectFile); }