测试篇 尝了一下net5.0桌面开发

首先要去更新visual studio 2019 升级到 v16.8及以上,打开vs界面的最上面搜索"更新";

否则不更新的话,会出现: 找不到 .NETFramework,Version=v5.0 的引用程序集

该不会要教下载vs屎丢丢之后也要点那个net桌面开发吧.

然后新建一个.net standard(不是.net framework)工程,修改这个工程的.csproj文件,注意第一句,和我之前的standard工程不一样,之前的是:

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

而这次需要这么来:

<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
        <!--永远支持最新语法 preview,默认是latestMajor-->
        <LangVersion>preview</LangVersion>
        <!--必须要加-windows-->
        <TargetFrameworks>net5.0-windows;net48</TargetFrameworks>
        <!-- 支持wpf -->
        <UseWpf>true</UseWpf>
        <!-- 支持winform -->
        <UseWindowsForms>true</UseWindowsForms>
        <!-- 以下是默认引用 WPF 相关依赖的属性 -->
        <ExtrasEnableWpfProjectSetup>true</ExtrasEnableWpfProjectSetup>
        <!-- 以下是默认引用 Windows Forms 相关依赖的属性 -->
        <ExtrasEnableWinFormsProjectSetup>true</ExtrasEnableWinFormsProjectSetup>         
        <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
        <Platforms>AnyCPU;x86;x64</Platforms>
        <!--dll=Library exe=WinExe 可以在属性上面改输出类型-->
        <OutputType>WinExe</OutputType>
    </PropertyGroup>
    
    <ItemGroup>
        <!--貌似包并没有更新到5.0..-->
        <!--<PackageReference Include="iTextSharp" Version="5.5.13.1" />-->
    </ItemGroup>
    
</Project>

但是要注意这样的开发方案的跨平台性质,WPF和winform不是跨平台的,而框架是跨平台的.

所以这并不是一个mac Acad上面调用WPF的解决方案....仅仅是win的.从-windows你也可以知道..

然后就可以右键使用winform和wpf了.

但是包嘛....其他开发者都还没更新到这么新呢.

而编译的时候你可以调用低版本的dll,这样只是会提示一个兼容性警告.

补充20210224更新了,c#9.0语法 https://devblogs.microsoft.com/dotnet/c-9-0-on-the-record/

(完)

原文地址:https://www.cnblogs.com/JJBox/p/14013073.html