當前位置: 首頁>>代碼示例>>C#>>正文


C# Project.RemoveItems方法代碼示例

本文整理匯總了C#中Microsoft.Build.Evaluation.Project.RemoveItems方法的典型用法代碼示例。如果您正苦於以下問題:C# Project.RemoveItems方法的具體用法?C# Project.RemoveItems怎麽用?C# Project.RemoveItems使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Microsoft.Build.Evaluation.Project的用法示例。


在下文中一共展示了Project.RemoveItems方法的13個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: Cleanup

        private static void Cleanup(Project project, string itemTypeToCleanup)
        {
            var items = project.Items.Where(x => x.ItemType == itemTypeToCleanup).ToList();
            project.RemoveItems(items);

            var sortedItems = items.OrderBy(x => x.UnevaluatedInclude);

            foreach (var item in sortedItems)
                project.AddItemFast(itemTypeToCleanup, item.UnevaluatedInclude);
        }
開發者ID:exira,項目名稱:csproj-rewriter,代碼行數:10,代碼來源:Program.cs

示例2: TestRunPythonCommand

        public void TestRunPythonCommand() {
            var expectedSearchPath = string.Format("['{0}', '{1}']",
                TestData.GetPath(@"TestData").Replace("\\", "\\\\"),
                TestData.GetPath(@"TestData\HelloWorld").Replace("\\", "\\\\")
            );

            var proj = new Project(TestData.GetPath(@"TestData\Targets\Commands4.pyproj"));

            foreach (var version in PythonPaths.Versions) {
                var verStr = version.Version.ToVersion().ToString();
                proj.SetProperty("InterpreterId", version.Id.ToString("B"));
                proj.SetProperty("InterpreterVersion", verStr);
                proj.RemoveItems(proj.ItemsIgnoringCondition.Where(i => i.ItemType == "InterpreterReference").ToArray());
                proj.AddItem("InterpreterReference", string.Format("{0:B}\\{1}", version.Id, verStr));
                proj.Save();
                proj.ReevaluateIfNecessary();

                var log = new StringLogger(LoggerVerbosity.Minimal);
                Assert.IsTrue(proj.Build("CheckCode", new ILogger[] { new ConsoleLogger(LoggerVerbosity.Detailed), log }));
                
                Console.WriteLine();
                Console.WriteLine("Output from {0:B} {1}", version.Id, version.Version.ToVersion());
                foreach (var line in log.Lines) {
                    Console.WriteLine("* {0}", line.TrimEnd('\r', '\n'));
                }

                var logLines = log.Lines.Last().Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);
                Assert.AreEqual(2, logLines.Length);
                Assert.AreEqual(version.Version.ToVersion().ToString(), logLines[0].Trim());
                Assert.AreEqual(expectedSearchPath, logLines[1].Trim());
            }
        }
開發者ID:sadapple,項目名稱:PTVS,代碼行數:32,代碼來源:BuildTasksTests.cs

示例3: RemoveZombiedItem

        public void RemoveZombiedItem()
        {
            string projectOriginalContents = ObjectModelHelpers.CleanupFileContents(@"
                <Project ToolsVersion='msbuilddefaulttoolsversion' DefaultTargets='Build' xmlns='msbuildnamespace'>
                    <ItemGroup>
                        <i Include='i1' />
                    </ItemGroup>
                </Project>
                ");
            Project project = new Project(XmlReader.Create(new StringReader(projectOriginalContents)));
            ProjectItem item = project.GetItems("i").FirstOrDefault();

            project.RemoveItems(new List<ProjectItem>() { item });
            project.RemoveItems(new List<ProjectItem>() { item });

            Assert.Equal(0, project.Items.Count());
        }
開發者ID:cameron314,項目名稱:msbuild,代碼行數:17,代碼來源:Project_Tests.cs

示例4: RemoveItemWrongProject

        public void RemoveItemWrongProject()
        {
            Assert.Throws<ArgumentException>(() =>
            {
                ProjectRootElement root1 = ProjectRootElement.Create();
                root1.AddItem("i", "i1");
                ProjectRootElement root2 = ProjectRootElement.Create();
                root2.AddItem("i", "i1");
                Project project1 = new Project(root1);
                Project project2 = new Project(root2);

                project1.RemoveItems(project2.Items);
            }
           );
        }
開發者ID:cameron314,項目名稱:msbuild,代碼行數:15,代碼來源:Project_Tests.cs

示例5: RemoveItemsOneNull

 public void RemoveItemsOneNull()
 {
     Assert.Throws<ArgumentNullException>(() =>
     {
         Project project = new Project();
         project.RemoveItems(new List<ProjectItem>() { null });
     }
    );
 }
開發者ID:cameron314,項目名稱:msbuild,代碼行數:9,代碼來源:Project_Tests.cs

示例6: RemoveSeveralItemsExpandExpression

        public void RemoveSeveralItemsExpandExpression()
        {
            string projectOriginalContents = ObjectModelHelpers.CleanupFileContents(@"
                <Project ToolsVersion='msbuilddefaulttoolsversion' DefaultTargets='Build' xmlns='msbuildnamespace'>
                    <ItemGroup>
                        <i Include='i1;i2' />
                        <j Include='@(i);j2' />
                    </ItemGroup>
                </Project>
                ");
            Project project = new Project(XmlReader.Create(new StringReader(projectOriginalContents)));

            project.RemoveItems(project.GetItems("j").Take(2));
            Assert.Equal(3, project.Items.Count());

            StringWriter writer = new StringWriter();
            project.Save(writer);

            string projectExpectedContents = ObjectModelHelpers.CleanupFileContents(@"
                <Project ToolsVersion='msbuilddefaulttoolsversion' DefaultTargets='Build' xmlns='msbuildnamespace'>
                    <ItemGroup>
                        <i Include='i1;i2' />
                        <j Include='j2' />
                    </ItemGroup>
                </Project>
                ");

            Helpers.CompareProjectXml(projectExpectedContents, writer.ToString());
        }
開發者ID:cameron314,項目名稱:msbuild,代碼行數:29,代碼來源:Project_Tests.cs

示例7: RemoveSeveralItemsOfVariousTypes

        public void RemoveSeveralItemsOfVariousTypes()
        {
            string projectOriginalContents = ObjectModelHelpers.CleanupFileContents(@"
                <Project ToolsVersion='msbuilddefaulttoolsversion' DefaultTargets='Build' xmlns='msbuildnamespace'>
                    <ItemGroup>
                        <i Include='i1' />
                        <j Include='j1' />
                        <j Include='j2' />
                        <k Include='k1' />
                    </ItemGroup>
                </Project>
                ");
            Project project = new Project(XmlReader.Create(new StringReader(projectOriginalContents)));

            List<ProjectItem> list = new List<ProjectItem>() { project.GetItems("i").FirstOrDefault(), project.GetItems("j").FirstOrDefault() };

            project.RemoveItems(list);

            Assert.Equal(2, project.Items.Count());
        }
開發者ID:cameron314,項目名稱:msbuild,代碼行數:20,代碼來源:Project_Tests.cs

示例8: RemoveItemWrongProject

        public void RemoveItemWrongProject()
        {
            ProjectRootElement root1 = ProjectRootElement.Create();
            root1.AddItem("i", "i1");
            ProjectRootElement root2 = ProjectRootElement.Create();
            root2.AddItem("i", "i1");
            Project project1 = new Project(root1);
            Project project2 = new Project(root2);

            project1.RemoveItems(project2.Items);
        }
開發者ID:JamesLinus,項目名稱:msbuild,代碼行數:11,代碼來源:Project_Tests.cs

示例9: RemoveItemsOneNull

 public void RemoveItemsOneNull()
 {
     Project project = new Project();
     project.RemoveItems(new List<ProjectItem>() { null });
 }
開發者ID:JamesLinus,項目名稱:msbuild,代碼行數:5,代碼來源:Project_Tests.cs

示例10: RemoveSeveralItemsFirstZombiesSecond

        public void RemoveSeveralItemsFirstZombiesSecond()
        {
            string projectOriginalContents = ObjectModelHelpers.CleanupFileContents(@"
                <Project ToolsVersion='msbuilddefaulttoolsversion' DefaultTargets='Build' xmlns='msbuildnamespace'>
                    <ItemGroup>
                        <i Include='i1;i2' />
                    </ItemGroup>
                </Project>
                ");
            Project project = new Project(XmlReader.Create(new StringReader(projectOriginalContents)));

            project.RemoveItems(project.GetItems("i"));

            Assert.AreEqual(0, project.Items.Count());
        }
開發者ID:JamesLinus,項目名稱:msbuild,代碼行數:15,代碼來源:Project_Tests.cs

示例11: FixReferences

        private void FixReferences(Project project, Dictionary<ProjectItem, ReferenceConfig> referencesToRemove)
        {
            foreach (var referenceConfig in referencesToRemove.Values)
            {
                _processedReferences[referenceConfig] = true;
            }

            project.RemoveItems(referencesToRemove.Keys);
            foreach (var referenceToRemove in referencesToRemove.Values)
            {
                project.AddItem(ProjectStrings.AssemblyReference, referenceToRemove.AssemblyReference,
                    referenceToRemove.CreateMetaData(project.FullPath));
            }
        }
開發者ID:cebence,項目名稱:Reffixer,代碼行數:14,代碼來源:ProjectManager.cs

示例12: ExcludePaths

        private static void ExcludePaths(Project proj, IReadOnlyList<string> excludedPaths)
        {
            var toRemove = proj.Items.Where(item => excludedPaths.Contains(item.UnevaluatedInclude)).ToList();
            proj.RemoveItems(toRemove);
        }
開發者ID:kontur-edu,項目名稱:uLearn,代碼行數:5,代碼來源:ProjModifier.cs

示例13: RemoveCheckingFromCsproj

        public static void RemoveCheckingFromCsproj(Project proj)
        {
            var toRemove = proj.Items.Where(IsChecking).ToList();
            proj.RemoveItems(toRemove);
        }
開發者ID:kontur-edu,項目名稱:uLearn,代碼行數:5,代碼來源:ProjModifier.cs


注:本文中的Microsoft.Build.Evaluation.Project.RemoveItems方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。