Visual Studio新的 .csporj 文件

Visual Studio新的 .csporj 文件非常方便,虽然目前还不支持WPF、WinForm等工程,但应用到控制台程序,类库还是没有任何问题的。只需要简单的用如下内容替换老的csproj即可:

<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
        <TargetFramework>net47</TargetFramework>
    </PropertyGroup>
</Project>

由于现在的程序集信息是卸载csproj文件中,和老项目中的Properties文件夹中定义的程序集信息冲突了,需要删除老项目的Properties文件夹。

也可以新建一个.net standard类库,然后修改TargetFramework属性,这样成功率更高。

 

这里另外介绍一下新的csproj的几个新特性:

1. 集成nuget程序包管理,并且处理依赖性更加精简

<ItemGroup>
    <PackageReference Include="NUnit" Version="3.10.1" />
</ItemGroup>

 

2. 支持直接生成nuget包。

3. 支持多种不同类型的框架输出的

<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
        <TargetFrameworks>net47;netstandard2.0</TargetFrameworks>
    </PropertyGroup>
</Project>

也支持不同框架下包含不同的程序集和程序包:

<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <TargetFrameworks>netstandard2.0;net47</TargetFrameworks>
    </PropertyGroup>

    <ItemGroup Condition="'$(TargetFramework)' == 'net47'">
        <PackageReference Include="Microsoft.Azure.DocumentDB" Version="1.12.0" />
    </ItemGroup>

    <ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
        <PackageReference Include="Microsoft.Azure.DocumentDB.Core" Version="1.2.0" />
    </ItemGroup>

</Project>
View Code

比之前的share project是要强大不少的。

原文地址:https://www.cnblogs.com/TianFang/p/8834782.html