本文整理汇总了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;
}
示例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;
}
示例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;
//.........这里部分代码省略.........