本文整理汇总了C#中Microsoft.Build.Evaluation.RemoveItems方法的典型用法代码示例。如果您正苦于以下问题:C# Microsoft.Build.Evaluation.RemoveItems方法的具体用法?C# Microsoft.Build.Evaluation.RemoveItems怎么用?C# Microsoft.Build.Evaluation.RemoveItems使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Build.Evaluation
的用法示例。
在下文中一共展示了Microsoft.Build.Evaluation.RemoveItems方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GenerateReferences
private void GenerateReferences(ProjectRootElement project, MB.Project projectManipulator, CscTask task, GenerateMsBuildTask generator)
{
projectManipulator.RemoveItems(projectManipulator.GetItemsIgnoringCondition("Reference"));
projectManipulator.RemoveItems(projectManipulator.GetItemsIgnoringCondition("ProjectReference"));
foreach(var reference in task.References.FileNames)
{
var name = Path.GetFileNameWithoutExtension(reference);
var relativeReference = new FileInfo(reference).GetPathRelativeTo(new DirectoryInfo(project.DirectoryPath));
var matchedProject = generator.FindProjectReference(relativeReference);
if (matchedProject == null)
{
project.AddItem(
"Reference",
name,
new[]
{
new KeyValuePair<string, string>("Name", name),
new KeyValuePair<string, string>("HintPath", MB.ProjectCollection.Escape(relativeReference))
});
}
else
{
project.AddItem(
"ProjectReference",
MB.ProjectCollection.Escape(new FileInfo(matchedProject.FullPath).GetPathRelativeTo(new DirectoryInfo(project.DirectoryPath))),
new[]
{
new KeyValuePair<string, string>("Project", matchedProject.GetProjectId().ToString("B")),
new KeyValuePair<string, string>("Name", matchedProject.GetAssemblyName())
});
}
}
foreach (var reference in new[] { "mscorlib", "System", "System.Xml" })
{
project.AddItem("Reference", reference, new[] { new KeyValuePair<string, string>("Name", reference) });
}
}
示例2: GenerateCompileIncludes
private void GenerateCompileIncludes(ProjectRootElement project, MB.Project projectManipulator, CscTask task)
{
projectManipulator.RemoveItems(projectManipulator.GetItemsIgnoringCondition("Compile"));
projectManipulator.RemoveItems(projectManipulator.GetItemsIgnoringCondition("EmbeddedResource"));
foreach (var include in task.Sources.FileNames)
{
project.AddItem(
"Compile",
MB.ProjectCollection.Escape(new FileInfo(include).GetPathRelativeTo(new DirectoryInfo(project.DirectoryPath))),
new[]
{
new KeyValuePair<string, string>("SubType", "Code")
});
}
foreach (var resourceList in task.ResourcesList)
{
foreach (var resource in resourceList.FileNames)
{
project.AddItem(
"EmbeddedResource",
MB.ProjectCollection.Escape(new FileInfo(resource).GetPathRelativeTo(new DirectoryInfo(project.DirectoryPath))),
new[]
{
new KeyValuePair<string, string>("LogicalName", resourceList.GetManifestResourceName(resource))
});
}
}
project.EnsureItemExists("None", MB.ProjectCollection.Escape(
new FileInfo(task.Project.BuildFileLocalName).GetPathRelativeTo(new DirectoryInfo(project.DirectoryPath))));
}