首页 > 其他分享 >Net7升级到Net8相关问题

Net7升级到Net8相关问题

时间:2024-03-04 12:12:32浏览次数:28  
标签:option 升级 AutoMapper Net8 Net7 true

除了按照网上常规Net8升级步骤外,编译和运行都会发生一些异常和错误,代码兼容性根据提示倒是可以修改。倒是运行时错误,网上资料比较少,下面会持续登记升级过程中踩的坑:

1. MediatR 库升级到最新的12.2后,报错各种服务找不到,实际是没有DI实现:

原来注册一般这么写:

1 services.AddMediatR(Assembly.GetExecutingAssembly());

升级后改成如下:

1 services.AddMediatR(cfg => cfg.RegisterServicesFromAssembly(Assembly.GetExecutingAssembly()));

 

2. AutoMapper库升级到13.0.1后,老的 AutoMapper.Extensions.Microsoft.DependencyInjection 库就可以删除引用了。

<PackageReference Include="AutoMapper" Version="13.0.1" />
<!--<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="12.0.0" />-->

 

3. 升级到net8后,使用JWT认证的地方,一般是: AddJwtBearer(option => ...{ } ),要增加一个属性来兼容老代码:  option.UseSecurityTokenValidators = true; ,否则认证会失败:

1  option.SecurityTokenValidators.Clear();
2  option.UseSecurityTokenValidators = true;
3  option.SecurityTokenValidators.Add(new UserTokenValidation(appSetting, httpContextAccessor));
4  option.SaveToken = true;

Net8为了性能的提升,废弃了如上写法: 参考 CS0618

 兼容不是好办法,最好的还是按照建议,实现验证TokenHandlers。

 升级到Net8后,初步体验到速度确实有提升,至少打包后exe和dll都变小了,依赖ref也少了许多。其它待查问题后续更新中...

 

标签:option,升级,AutoMapper,Net8,Net7,true
From: https://www.cnblogs.com/pccai/p/18051537

相关文章

  • ubuntu22.04升级到23.04
    ubuntu22.04升级到23.04ubuntu一、更新22.04先对现有的22.04的系统进行更新,得到最新的22.04版。1.设置软件更新打开“软件和更新”,转到“更新”选项卡。选择“有新版本时通知我”并将其更改为“适用任何新版本”.这将告诉包管理器查找Ubuntu23.04发布详细信息。......
  • 谷歌扩展V2升级V3一些功能的汇总
     扩展的页面通信service-worker.js(原v2版本的background.js)与popup页面的通信popup页面不能直接使用缓存(cookie等),必须在service-worker等页面使用,使用sendMessage与service-worker通信,在service-worker获取到缓存后再回传给popup页面js页面与扩展的通信:js插件里使用wind......
  • C++第六节课 引用变量 指针的升级版
    #include<iostream>usingnamespacestd;//C++的引用是C指针的升级可以提高代码的稳定性和健壮性//const修饰的引用是常引用//函数传参实参向形参进行传递默认是值的传递这个是值的一个副本两个互不影响intadd(constint&a,constint&b){///a++;避......
  • 升级Jenkins至2.426.3后,项目名称带有中文的无法在节点机上运行
    之前在AlmaLinux上安装了2.356版本的Jenkins(Jenkins从Ubuntu迁移至AlmaLinux问题及相关解决记录),但最近由于爆出安全漏洞(https://www.jenkins.io/security/advisory/2024-01-24/),因此将Jenkins升级至最新的2.426.3版本,完成后发现之前已经解决的节点机不支持中文项目名称的问题又出现......
  • 蓝桥杯2022年第十三届省赛真题-技能升级(中)
    目录题目题解:暴力题解:优化题目题解:暴力思路:枚举每一个Ai,并一直减去Bi,直到小于零为止,即为该技能所能增加的点数的集合。将每一个选择存进res中,并排序选择前M大的技能点即可。#首先,a-b加入列表,循环a/b次;其次,对列表排序,取前M个数进行求和a,b=map(int,input().split())#读入......
  • 亚古兽会升级,锁会吗?
    亚古兽会升级,锁会吗?大家好,我是小高先生。在经过对锁的基础知识和对象头概念的学习之后,相信各位已经对锁机制有了初步的了解。在之前的文章中,我有提到过关于锁升级的概念。今天,我想和大家一起深入探讨一下什么是锁升级。借助于我们之前内容的积累,理解这一部分内容将会是轻而易举的......
  • Cocos Creator 2.x升级至Cocos Creator 3.x
    1.导入类时,批量导入2.导入override...关键字时,批量导入3、this.node.scale=0.6-->this.node.setScale(0.6,0.6);4、node.anchorX=node.anchorY=-->.getComponent(UITransform)!.5、.getComponent(UIOpacity)!.opacity6..on('touchend',-->.on(NodeEventType.......
  • React项目升级
    一、前端框架(或者库)升级的原因:a、前端技术更新比较快,需要不断更新保持技术和依赖都和社区同步;b、新版脚手架对性能和开发体验都进行了很多优化,新版脚手架基于社区2021年的相对最优解决方案和依赖。如vite2.0、react17(相比react16版本有了核心实现的重构)等;二、详细描述要升级的......
  • 苹果iOS 18升级名单首曝:24款机型可升 iPhone XR不死!
    日前,媒体MacRumors得到了来自私人账号的苹果iOS18升级机型名单,该账号在iOS内部版本号方面有良好爆料记录。根据机型名单,iOS18将支持24款机型升级,与iOS17保持一致。具体机型如下:iPhone15iPhone15PlusiPhone15ProiPhone15ProMaxiPhone14iPhone14PlusiPhone......
  • k8s是如何保障滚动升级时下线的pod不被访问
    Kubernetes(k8s)通过一系列机制保障在滚动升级时,下线的Pod不再被访问。以下是一些主要的保障措施:Service抽象:在Kubernetes中,Pod通常不是直接暴露给外部访问的,而是通过Service来抽象和暴露。Service提供一个稳定的网络端点,无论背后的Pod如何变化,Service的IP和端......