本文整理汇总了C#中Microsoft.Build.BuildEngine.Engine.UnloadAllProjects方法的典型用法代码示例。如果您正苦于以下问题:C# Engine.UnloadAllProjects方法的具体用法?C# Engine.UnloadAllProjects怎么用?C# Engine.UnloadAllProjects使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Build.BuildEngine.Engine
的用法示例。
在下文中一共展示了Engine.UnloadAllProjects方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: BuildProject
public static bool BuildProject(string projectPath)
{
bool success = false;
CultureInfo ci = CultureInfo.InvariantCulture;
Engine engine = new Engine();
engine.BinPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.System)
+ @"\..\Microsoft.NET\Framework\v4.0.30319";
try
{
success = engine.BuildProjectFile(projectPath);
}
finally
{
engine.UnloadAllProjects();
}
return success;
}
示例2: BuildProject
public bool BuildProject(string projectPath)
{
bool success = false;
CultureInfo ci = CultureInfo.InvariantCulture;
Engine engine = new Engine();
engine.BinPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.System)
+ @"\..\Microsoft.NET\Framework\v4.0.30319";
try
{
success = engine.BuildProjectFile(projectPath);
}
catch(ArgumentException)
{
throw new System.IO.FileNotFoundException("The specified project to build not found!");
}
finally
{
engine.UnloadAllProjects();
}
return success;
}
示例3: Engine
public void MalformedProjectDoesNotGetAddedToEngine
(
)
{
Engine myEngine = new Engine(@"c:\");
Project myProject = myEngine.CreateNewProject();
// Create a temp file to be used as our project file.
string projectFile = Path.GetTempFileName();
try
{
// Write some garbage into a project file.
File.WriteAllText(projectFile, "blah");
Assertion.AssertNull("Engine should not know about project before project has been loaded",
myEngine.GetLoadedProject(projectFile));
int exceptionCount = 0;
// Load the garbage project file. We should get an exception.
try
{
myProject.Load(projectFile);
}
catch (InvalidProjectFileException)
{
exceptionCount++;
}
Assertion.AssertEquals("Should have received invalid project file exception.", 1, exceptionCount);
Assertion.AssertNull("Engine should not know about project if project load failed.",
myEngine.GetLoadedProject(projectFile));
}
finally
{
// Get a little extra code coverage
myEngine.UnregisterAllLoggers();
myEngine.UnloadAllProjects();
File.Delete(projectFile);
}
}
示例4: MsDeploy
/// <summary>
/// MSDeploy web role project file.
/// </summary>
/// <param name="csprojPath">Full path to web role .csproj file</param>
/// <param name="msDeployDir">Temporary packageTmp folder</param>
/// <returns>MsDeploy success status</returns>
public static bool MsDeploy(string csprojPath, string msDeployDir)
{
Console.WriteLine(" Verifying csproj path...");
try
{
var csprojFileInfo = new FileInfo(csprojPath);
if (!csprojFileInfo.Exists || !csprojFileInfo.Name.EndsWith(".csproj"))
{
Console.WriteLine(" csproj file could not be found at: " + csprojPath);
return false;
}
Console.WriteLine(" csproj found.");
Console.WriteLine(" Building project...");
var engine = new Engine();
var csprojParentDir = csprojFileInfo.Directory;
var logger = new FileLogger { Parameters = "logfile=" + csprojParentDir + @"\publish.log" };
engine.RegisterLogger(logger);
var buildPropGroup = new BuildPropertyGroup();
buildPropGroup.SetProperty("OutDir", msDeployDir);
var deployOnBuildSuccess = engine.BuildProjectFile(csprojPath, new[] { "Rebuild" }, buildPropGroup);
if (deployOnBuildSuccess)
Console.WriteLine(" Successfully MsDeploy project.");
else
Console.WriteLine(" Build failed. Check " + csprojParentDir + @"\publish.log for details.");
engine.UnloadAllProjects();
engine.UnregisterAllLoggers();
return deployOnBuildSuccess;
}
catch (Exception ex)
{
Console.WriteLine(" " + ex.GetType() + ": " + ex.Message);
return false;
}
}