当前位置: 首页>>代码示例>>C#>>正文


C# ISolution.AddProject方法代码示例

本文整理汇总了C#中ISolution.AddProject方法的典型用法代码示例。如果您正苦于以下问题:C# ISolution.AddProject方法的具体用法?C# ISolution.AddProject怎么用?C# ISolution.AddProject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ISolution的用法示例。


在下文中一共展示了ISolution.AddProject方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Generate

		public virtual async Task<IProject> Generate(ISolution solution, string name)
		{
			var location = Path.Combine(solution.CurrentDirectory, name);

			if (!Directory.Exists(location))
			{
				Directory.CreateDirectory(location);
			}

			IProject project = CPlusPlusProject.Create(solution, location, name);

			project = solution.AddProject(project);

			if (solution.StartupProject == null)
			{
				solution.StartupProject = project;
			}

			return project;
		}
开发者ID:VitalElement,项目名称:AvalonStudio,代码行数:20,代码来源:BlankCPlusPlusLanguageTemplate.cs

示例2: Generate

		public override async Task<IProject> Generate(ISolution solution, string name)
		{
			var shell = IoC.Get<IShell>();
			var project = await base.Generate(solution, name);
			var catchProjectDir = Path.Combine(solution.CurrentDirectory, "AvalonStudio.Testing.Catch");
			var catchProjectFile = Path.Combine(catchProjectDir, "CatchTestFramework.acproj");
			if (!Directory.Exists(catchProjectDir))
			{
				await
					Git.ClonePublicHttpSubmodule(this, "https://github.com/VitalElement/AvalonStudio.Testing.Catch.git",
						catchProjectDir);
			}

			// Add project
			var catchProject = Solution.LoadProjectFile(solution, catchProjectFile);
			catchProject.Hidden = true;

			solution.AddProject(catchProject);

			// Reference catch.
			project.AddReference(catchProject);

			await SourceFile.Create(project, "UnitTest1.cpp", new UnitTestTemplate().TransformText());

			project.ToolChain = shell.ToolChains.FirstOrDefault(tc => tc is LocalGCCToolchain);
			project.Debugger = shell.Debuggers.FirstOrDefault(d => d is LocalDebugAdaptor);
			project.TestFramework = shell.TestFrameworks.FirstOrDefault(d => d is CatchTestFramework);
            project.ToolChain.ProvisionSettings(project);

            var settings = LocalGCCToolchain.GetSettings(project);
			settings.CompileSettings.Exceptions = true;
			settings.CompileSettings.Rtti = true;
			settings.CompileSettings.Optimization = OptimizationLevel.Debug;
			settings.CompileSettings.CustomFlags += " -Wno-unknown-pragmas ";

			project.Save();
			solution.Save();

			return project;
		}
开发者ID:VitalElement,项目名称:AvalonStudio,代码行数:40,代码来源:CPlusPlusUnitTestTemplate.cs

示例3: CreateSubmissionProject

        private IProject CreateSubmissionProject(ISolution solution)
        {
            var name = "Submission#" + _documentNumber++;
            var projectId = ProjectId.CreateNewId(solution.Id, name);

            var version = VersionStamp.Create();
            var compilationOptions = _compilationOptions.WithScriptClassName(name);

            var projectInfo = new ProjectInfo(
                projectId,
                version,
                name,
                name,
                LanguageNames.CSharp,
                compilationOptions: compilationOptions,
                parseOptions: _parseOptions,
                metadataReferences: _references,
                isSubmission: true);

            solution = solution.AddProject(projectInfo);

            if (_previousProjectId != null)
            {
                solution = solution.AddProjectReference(projectId, _previousProjectId);
            }

            return solution.GetProject(projectId);
        }
开发者ID:Wagnerp,项目名称:scriptcs-editor,代码行数:28,代码来源:ScriptManager.cs


注:本文中的ISolution.AddProject方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。