.net core 如何以编程方式将非SDK样式的项目转换为SDK样式的项目?

.net core 如何以编程方式将非SDK样式的项目转换为SDK样式的项目?,.net-core,msbuild,.net Core,Msbuild,我知道如何以编程方式操作非SDK样式的项目文件: 创建Microsoft.Build.Evaluation.Project实例 通过其API进行更改,例如添加/删除项或属性 调用Save函数 现在,我想编写代码,在给出以下条件时,将非SDK样式的项目转换为SDK样式的项目: 所有nuget引用都已通过PackageReference 该项目易于转换,即它引用项目目录中的所有源文件,并且没有特殊的目标、属性、导入或项 手动转换很简单,但我想将其自动化。我不明白的是,我应该做什么样的Projec

我知道如何以编程方式操作非SDK样式的项目文件:

  • 创建
    Microsoft.Build.Evaluation.Project
    实例
  • 通过其API进行更改,例如添加/删除
    属性
  • 调用
    Save
    函数
  • 现在,我想编写代码,在给出以下条件时,将非SDK样式的项目转换为SDK样式的项目:

    • 所有nuget引用都已通过
      PackageReference
    • 该项目易于转换,即它引用项目目录中的所有源文件,并且没有特殊的目标、属性、导入或项
    手动转换很简单,但我想将其自动化。我不明白的是,我应该做什么样的
    Project
    对象操作,以便在保存根
    Project
    元素时不再具有xml名称空间,而是具有
    Sdk
    属性?所有其他的,比如剥掉我认为我能做的所有绒毛

    编辑1


    实际上,我还想知道是否有办法知道给定的引用是否是SDK的一部分,因此不需要明确提及。

    应该给您一个起点。我会看一看。谢谢