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


C# Project.GetConfiguration方法代码示例

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


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

示例1: GetProjectDeployFiles

		public override DeployFileCollection GetProjectDeployFiles (DeployContext ctx, Project project, ConfigurationSelector configuration)
		{
			DeployFileCollection deployFiles = new DeployFileCollection ();
			base.GetProjectDeployFiles (ctx, project, configuration);
			// Add the compiled output file
			
			string outputFile = project.GetOutputFileName (configuration);
			if (!string.IsNullOrEmpty (outputFile))
				deployFiles.Add (new DeployFile (project, outputFile, Path.GetFileName (outputFile), TargetDirectory.ProgramFiles));
			
			// Collect deployable files
			foreach (ProjectFile file in project.Files) {
				// skip CopyToOutputDirectory files when it's just a project build, because 
				// MonoDevelop.Project.Projects already copies these files using more subtle overwriting
				// semantics
				if (file.CopyToOutputDirectory != FileCopyMode.None)
					continue;
				    
				DeployProperties props = new DeployProperties (file);
				if (props.ShouldDeploy) {
					DeployFile dp = new DeployFile (file);
					deployFiles.Add (dp);
					
					if (string.Compare (Path.GetFileName (dp.SourcePath), "app.config", true)==0 && string.Compare (Path.GetFileName (dp.RelativeTargetPath), "app.config", true)==0) {
						string newName = Path.GetFileName (outputFile) + ".config";
						dp.RelativeTargetPath = Path.Combine (Path.GetDirectoryName (dp.RelativeTargetPath), newName);
					}
				}
			}
			
			foreach (FileCopySet.Item item in project.GetSupportFileList (configuration)) {
				 deployFiles.Add (new DeployFile (project, item.Src, item.Target, TargetDirectory.ProgramFiles));
			}
			
			DotNetProject netProject = project as DotNetProject;
			if (netProject != null) {
				DotNetProjectConfiguration conf = (DotNetProjectConfiguration) project.GetConfiguration (configuration);
				if (conf.DebugMode) {
					string mdbFile = netProject.TargetRuntime.GetAssemblyDebugInfoFile (conf.CompiledOutputName);
					deployFiles.Add (new DeployFile (project, mdbFile, Path.GetFileName (mdbFile), TargetDirectory.ProgramFiles));
				}
			}
			
			return deployFiles;
		}
开发者ID:transformersprimeabcxyz,项目名称:monodevelop-1,代码行数:45,代码来源:DefaultDeployServiceExtension.cs

示例2: GetProjectDeployFiles

		public override DeployFileCollection GetProjectDeployFiles (DeployContext ctx, Project project, ConfigurationSelector configuration)
		{
			DeployFileCollection deployFiles = new DeployFileCollection ();
			base.GetProjectDeployFiles (ctx, project, configuration);
			
			// Add the compiled output files
			
			ProjectConfiguration pconf = (ProjectConfiguration) project.GetConfiguration (configuration);
			FilePath outDir = pconf.OutputDirectory;
			foreach (FilePath file in project.GetOutputFiles (configuration)) {
				deployFiles.Add (new DeployFile (project, file, file.ToRelative (outDir), TargetDirectory.ProgramFiles));
			}
			
			FilePath outputFile = project.GetOutputFileName (configuration);
			
			// Collect deployable files
			foreach (ProjectFile file in project.Files) {
				// skip CopyToOutputDirectory files when it's just a project build, because 
				// MonoDevelop.Project.Projects already copies these files using more subtle overwriting
				// semantics
				if (file.CopyToOutputDirectory != FileCopyMode.None)
					continue;
				    
				DeployProperties props = new DeployProperties (file);
				if (props.ShouldDeploy) {
					DeployFile dp = new DeployFile (file);
					deployFiles.Add (dp);
					
					if (string.Compare (Path.GetFileName (dp.SourcePath), "app.config", true)==0 && string.Compare (Path.GetFileName (dp.RelativeTargetPath), "app.config", true)==0) {
						string newName = Path.GetFileName (outputFile) + ".config";
						dp.RelativeTargetPath = Path.Combine (Path.GetDirectoryName (dp.RelativeTargetPath), newName);
					}
				}
			}
			
			foreach (FileCopySet.Item item in project.GetSupportFileList (configuration)) {
				 deployFiles.Add (new DeployFile (project, item.Src, item.Target, TargetDirectory.ProgramFiles));
			}
			
			return deployFiles;
		}
开发者ID:pgoron,项目名称:monodevelop,代码行数:41,代码来源:DefaultDeployServiceExtension.cs

示例3: GetCompletionData

        public static string GetCompletionData(Project project, string classPath, string fileName, int position)
        {
            if (!PropertyService.HasValue ("HaxeBinding.EnableCompilationServer"))
            {
                PropertyService.Set ("HaxeBinding.EnableCompilationServer", true);
                PropertyService.Set ("HaxeBinding.CompilationServerPort", 6000);
                PropertyService.SaveProperties();
            }

            string exe = "haxe";
            string args = "";

            if (project is NMEProject) {

                NMEProjectConfiguration configuration = project.GetConfiguration (MonoDevelop.Ide.IdeApp.Workspace.ActiveConfiguration) as NMEProjectConfiguration;

                string platform = configuration.Platform.ToLower ();
                string path = ((NMEProject)project).TargetNMMLFile;

                if (!File.Exists (path))
                {
                    path = Path.Combine (project.BaseDirectory, path);
                }

                DateTime time = File.GetLastWriteTime (Path.GetFullPath (path));

                if (!time.Equals (cacheNMMLTime) || platform != cachePlatform || configuration.AdditionalArguments != cacheArgumentsPlatform || ((NMEProject)project).AdditionalArguments != cacheArgumentsGlobal)
                {
                    cacheHXML = NMECommandLineToolsManager.GetHXMLData ((NMEProject)project, configuration);
                    cacheNMMLTime = time;
                    cachePlatform = platform;
                    cacheArgumentsGlobal = ((NMEProject)project).AdditionalArguments;
                    cacheArgumentsPlatform = configuration.AdditionalArguments;
                }

                args = cacheHXML + " -D code_completion";

            } else if (project is HaxeProject) {

                HaxeProjectConfiguration configuration = project.GetConfiguration (MonoDevelop.Ide.IdeApp.Workspace.ActiveConfiguration) as HaxeProjectConfiguration;

                args = "\"" + ((HaxeProject)project).TargetHXMLFile + "\" " + ((HaxeProject)project).AdditionalArguments + " " + configuration.AdditionalArguments;

            } else {

                return "";

            }

            args += " -cp \"" + classPath + "\" --display \"" + fileName + "\"@" + position + " -D use_rtti_doc";

            if (PropertyService.Get<bool> ("HaxeBinding.EnableCompilationServer")) {

                var port = PropertyService.Get<int> ("HaxeBinding.CompilationServerPort");

                if (compilationServer == null || compilationServer.HasExited || port != compilationServerPort)
                {
                    StartServer ();
                }

                try
                {
                    if (!compilationServer.HasExited)
                    {
                        var client = new TcpClient("127.0.0.1", port);
                        var writer = new StreamWriter(client.GetStream());
                        writer.WriteLine("--cwd " + project.BaseDirectory);
                        string[] argList = args.Split (' ');
                        foreach (var arg in argList)
                            writer.WriteLine(arg);
                        //writer.WriteLine("--connect " + port);
                        writer.Write("\0");
                        writer.Flush();
                        var reader = new StreamReader(client.GetStream());
                        var lines = reader.ReadToEnd().Split('\n');
                        client.Close();
                        return String.Join ("\n", lines);
                    }
                }
                catch(Exception)
                {
                    //MonoDevelop.Ide.MessageService.ShowError (ex.ToString ());
                    //TraceManager.AddAsync(ex.Message);
                    //if (!failure && FallbackNeeded != null)
                       // FallbackNeeded(false);
                    //failure = true;
                    //return "";
                }

            }

            //MonoDevelop.Ide.MessageService.ShowError ("Falling back to standard completion");

            Process process = new Process ();
            process.StartInfo.FileName = exe;
            process.StartInfo.Arguments = args;
            process.StartInfo.UseShellExecute = false;
            process.StartInfo.CreateNoWindow = true;
            process.StartInfo.RedirectStandardError = true;
            process.StartInfo.WorkingDirectory = project.BaseDirectory;
//.........这里部分代码省略.........
开发者ID:aaulia,项目名称:md-haxebinding,代码行数:101,代码来源:HaxeCompilerManager.cs


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