首页 > 编程学习 > .Net6 已知问题总结

.Net6 已知问题总结

发布时间:2022/11/11 1:24:40

1、NET6 连 SQL2019 时,连接字符串上要加 TrustServerCertificate=True;  不然会报证书错误

2、NET6 在 Linux 系统中,会遇到 System.Drawing.Common 的问题

  • App Context
    在项目启动时,配置 AppContext Switch,设置 System.Drawing.EnableUnixSupport
    System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true);

  • Runtime Config Json 
    在应用 build/publish 之后,会有一个 *.runtimeconfig.json我们可以直接修改这个文件
     {
        "runtimeOptions": {
           "configProperties": {
              "System.Drawing.EnableUnixSupport": true
           }
        }
     }
  • MS Build
    我们也可以在项目文件中添加一个下面的配置,作用和上面的直接修改 runtimeconfig.json 效果一样,只是 .NET SDK 会在生成的时候将这个配置写入到 runtimeconfig.json 中

     <ItemGroup>
           <RuntimeHostConfigurationOption Include="System.Drawing.EnableUnixSupport" Value="true" />
     </ItemGroup>
  • Environment Variable
    除此之外我们也可以配置环境变量 DOTNET_System_Drawing_EnableUnixSupport 来启用 Unix 支持

    1. Dockerfile 示例:

       ENV DOTNET_System_Drawing_EnableUnixSupport=true  

    2. Unix 示例:
       export DOTNET_System_Drawing_EnableUnixSupport true 

3、自带的 Linq 增强,和 MoreLinq 出现二义性,需要移除引用

Copyright © 2010-2022 dgrt.cn 版权所有 |关于我们| 联系方式