.netcore 6.0/7.0项目迁移至.netcore 8.0 注意事项

news/2024/5/19 21:48:50 标签: .netcore, 数据库, oracle

1、SqlSugarCore 相关

1.1 主项目添加数据,否则会报数据库连接错误:

  <InvariantGlobalization>false</InvariantGlobalization>

<PropertyGroup>
  <TargetFramework>net8.0</TargetFramework>
  <Nullable>enable</Nullable>
  <ImplicitUsings>enable</ImplicitUsings>
  <GenerateDocumentationFile>True</GenerateDocumentationFile>
  <InvariantGlobalization>false</InvariantGlobalization>
</PropertyGroup>

1.2   数据库连接字符串添加  Encrypt=True;TrustServerCertificate=True; 否则会报数据库连接中文错误:


 "ConnectionString": "Server=.;User Id=sa;Password=XXX;Database=XXX;Encrypt=True;TrustServerCertificate=True;",

1.3   SqlSugarCore NuGet包升级到 5.1.4.142 + 版本

2、AutoMapper 相关

2.1 删除一个NuGet包,这个在.netcore 8.0 会自带,引用则会冲突。

 AutoMapper.Extensions.Microsoft.DependencyInjection

2.2   AutoMapper NuGet包升级到 13.0.1+ 版本

3、Jwt 相关

3.1  加密的key字符串长度有最低要求,短了会报错,以前不会

 "JwtSetting": {
   "Issuer": "jwtIssuer", //颁发者
   "Audience": "jwtAudience", //可以给哪些客户端使用
   "SecretKey": "xhuangqianmingyueguangxhuangqianmingyueguang", //加密的Key
   "Expires": 60 //默认过期分钟
 },

4、目标框架

4.1  把所有项目的目标框架改成.NET 8.0

4.2  重新生成项目,可能会报很多引用相关的错误,删除无关using 引用

5、IIS部署问题

5.1  官网下载:dotnet-hosting-8.0.2-win.exe 和 dotnet-sdk-8.0.201-win-x64.exe,在服务器上安装。

5.2  项目 web.config 配置文件 hostingModel 修改为  "OutOfProcess" 

<system.webServer>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath="dotnet" arguments=".\XXXX.Core.App.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="OutOfProcess" />
    </system.webServer>

5.3  应用程序池 .NET CLR 版本 设为 无托管代码,模式为集成


http://www.niftyadmin.cn/n/5387967.html

相关文章

【鸿蒙 HarmonyOS 4.0】ArkTS开发语言

一、背景 ArkTS是HarmonyOS优选的主力应用开发语言。ArkTS围绕应用开发在TypeScript&#xff08;简称TS&#xff09;生态基础上做了进一步扩展&#xff0c;继承了TS的所有特性&#xff0c;是TS的超集。 二、基本语法 2.1、基本语法介绍 ArkTS的基本组成&#xff0c;资料来自…

【Qt】Qt QML添加软件图标(Windows)

1. 准备图标文件 将图片转换成.ico文件&#xff0c;注意&#xff1a;需要用专门的工具转换&#xff08;https://convertio.co/zh/image-converter/&#xff09; 2. 工程配置 2.1 方法1 pro文件中添加&#xff1a; RC_ICONS AutoTitration.ico2.2 方法2 添加qrc文件&…

【初始RabbitMQ】延迟队列的实现

延迟队列概念 延迟队列中的元素是希望在指定时间到了之后或之前取出和处理消息&#xff0c;并且队列内部是有序的。简单来说&#xff0c;延时队列就是用来存放需要在指定时间被处理的元素的队列 延迟队列使用场景 延迟队列经常使用的场景有以下几点&#xff1a; 订单在十分…

关于 Reflect 的笔记

背景&#xff1a;Reflect 为了操作对象而提供的新Api 和 Proxy对象一样 特点 将object 对象的一些明显属于语言内部的方法&#xff0c;放到Reflect 上处理&#xff1b;修改某些object返回的异常结果&#xff0c;让其变得更合理&#xff1b;让object操作都变成函数行为&#xf…

Swift基础知识:23.Swift析构过程

在 Swift 中&#xff0c;析构过程是指在一个类的实例被释放之前进行的清理操作。通常&#xff0c;这些清理操作包括释放实例所持有的资源、取消订阅通知、关闭文件等。Swift 使用析构器&#xff08;deinitializer&#xff09;来实现析构过程&#xff0c;它类似于构造器&#xf…

npm 清缓存

PS D:\workspace\WorkCode\SVN\wx-small\wx-sea-project> npm i vant/weapp -S --production\ 终止批处理操作吗(Y/N)? ^C PS D:\workspace\WorkCode\SVN\wx-small\wx-sea-project> npm i vant/weapp -S --production npm WARN config production Use --omitdev instead…

OpenCV运行gstreamer管道获取相机数据,处理以后,再交给gstreamer显示(QT实现)

效果: 前言 无意中发现,OpenCV也可以运行gstreamer的命令管道,然后使用appsink来与OpenCV连接起来进行处理,在不断测试之下,先后实现了以下功能: 1. OpenCV运行gstreamer命令,通过appsink传递给OpenCV显示 2. OpenCV运行gstreamer命令,然后再把Mat图像数据通过appsrc传…

深度学习神经网络实战:多层感知机,手写数字识别

目的 利用tensorflow.js训练模型&#xff0c;搭建神经网络模型&#xff0c;完成手写数字识别 设计 简单三层神经网络 输入层 28*28个神经原&#xff0c;代表每一张手写数字图片的灰度隐藏层 100个神经原输出层 -10个神经原&#xff0c;分别代表10个数字 代码 // 导入 Ten…