abp9 .net8 升级错误记录
错误一、
Cannot find compilation library location for package 'System.Security.Cryptography.Pkcs'
修复方法: 将以下配置设置添加到您的 YX.OAM.Web.Mvc.csproj 文件中。
<GenerateRuntimeConfigDevFile>true</GenerateRuntimeConfigDevFile>
错误二、
使用多上下文,升级mysql Nuget包为8.0.1后,有时会导致无法访问另一个数据库的数据出现
Access denied for user 'root'@'10.244.4.1' (using password: NO)
通过查找资料需要更改链接字符串为
"Default": "server=localhost;user=root;password=1234;database=ef";
错误三、
Token获取接口 http://localhost:5000/api/TokenAuth/Authenticate
报错: TIDX10720: Unable to create KeyedHashAlgorithm for algorithm 'HS256', the key size must be greater than: '256' bits, key has '176' bits. (Parameter 'keyBytes')
https://github.com/dotnet/aspnetcore/issues/49455
之前的密钥位数不够,密钥必需具有'256'位
"Authentication": {
"JwtBearer": {
"IsEnabled": "true",
"SecurityKey": "XXXXX_o/YrU/xV2QRD4zLKMr0wNOvYARep4oF3ie+GPi5et6U=",//这里
"Issuer": "XXXXX",
"Audience": "XXXXX"
},
"Token": {
"ExpiredTime": 30
},
"FunctionSwitch": {
"FollowEnabled": true
}
},
错误四、
运行项目时报错
2024-03-04 13:47:45,760 || FATAL || Abp.AbpBootstrapper || MySqlConnector.MySqlException (0x80004005): SSL Authentication Error
---> System.Security.Authentication.AuthenticationException: Cannot determine the frame size or a corrupted frame was received.
数据库来你姐字符串要增加 sslmode=None;
"Default": "server=localhost;user=root;password=1234;sslmode=None;database=ef";
错误五、
因为解决方案中使用了盛派的包,需要将Senparc.Weixin.MP 到最新---16.20.5
在Startup.cs中需要修改
旧
// 启动 CO2NET 全局注册,必须!
app.UseSenparcGlobal(env, senparcSetting.Value, globalRegister => { })
.UseSenparcWeixin(senparcWeixinSetting.Value, weixinRegister =>
{
weixinRegister.RegisterMpAccount(senparcWeixinSetting.Value, SenparcWeixinOptions.Name);
weixinRegister.RegisterTraceLog(ConfigTraceLog);
});
新
using Register = Senparc.CO2NET.Register;
// 启动 CO2NET 全局注册,必须!
var registerService = Register.UseSenparcGlobal(senparcSetting.Value, globalRegister => { })
.UseSenparcWeixin(senparcWeixinSetting.Value, (weixinRegister, weixinSetting) =>
{
weixinRegister.RegisterMpAccount(senparcWeixinSetting.Value, SenparcWeixinOptions.Name);
weixinRegister.RegisterTraceLog(ConfigTraceLog);
});
错误六、
之前的项目时.net Core 3.1 数据库的一个类
public virtual byte[] RowVersion { get; set; }
Pomelo.EntityFrameworkCore.MySql version: 8.0.1
错误: in 8.0.1 Is Timestamp byte[] no longer supported
需要将其升级为8.0.0 或者8.0.2
错误七、
[MaxLength(2048)]
public virtual string Remarks{ get; set; }
报错: Data too long for column 'Remarks' at row 1
通过测试查看所有实体, 里面有约束MaxLength大于2000的, 全部删除掉即可
错误八、
.net8中, 使用了新的Host.CreateDefaultBuilder(args)创建服务, 因此, 需要对:Program 和Startup 进行修改:
Program
using Abp.AspNetCore.Dependency;
using Abp.Dependency;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;
namespace XXXX.XXX.Web.Startup
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
internal static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
})
.UseCastleWindsor(IocManager.Instance.IocContainer);
}
}
Startup
ConfigureServices方法的返回值修改为void最后一行的return xxx修改为:
// Configure Abp and Dependency Injection services.AddAbpWithoutCreatingServiceProvider<SCMWebMvcModule>(options =>
options.IocManager.IocContainer.AddFacility<LoggingFacility>(
f => f.UseAbpLog4Net().WithConfig(_env.IsDevelopment()
? "log4net.config"
: "log4net.Production.config"
)
));
需要新增log4net.Production.config
<?xml version="1.0" encoding="utf-8"?>
<log4net>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="App_Data/Logs/Logs.log" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="10000KB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date || %5level || %logger || %message || %exception ||end %newline" />
</layout>
</appender>
<root>
<appender-ref ref="RollingFileAppender" />
<level value="DEBUG" />
</root>
<logger name="NHibernate">
<level value="WARN" />
</logger>
</log4net>
abp9 .net8 升级错误记录的更多相关文章
- uploadify插件Http Error(302)错误记录(MVC)
由于项目(asp.net MVC)需要做一个附件上传的功能,使用的是jQuery的Uploadify插件的2.1.0版本,上传文件到自己项目指定的文件夹下面.做完之后,在谷歌上测试是正确的,在火狐上报 ...
- 开发错误记录8:Unable to instantiate application com
开发错误记录8:Unable to instantiate application com.android.tools.fd.runtime.BootstrapApplication 这是因为在And ...
- PHP 错误与异常 笔记与总结(5)配置文件中与错误日志相关的选项 && 将错误记录到指定的文件中
[记录错误(生产环境)] php.ini: ① 开启 / 关闭 错误日志功能 log_errors = On ② 设置 log_errors 的最大字节数 log_errors_max_len = 其 ...
- 安装nagios出现的两个错误记录
最近在安装nagios,出现几个错误记录: 一 检查nagios配置的时候出现错误如下: Warning: Duplicate definition found for host 'kelly' (c ...
- DS4700磁盘阵列的控制器微码升级操作记录(收录百度文库)
DS4700磁盘阵列的控制器微码升级操作记录 项目介绍: 于10年3月,XX地市区/州XX分公司相继反映生产读取数据速度较之前变得非常慢,表现在:日常报表抽取数据速度明显变慢,客户打开前台页面速度 ...
- [置顶] 利用Global.asax的Application_Error实现错误记录,错误日志
利用Global.asax的Application_Error实现错误记录 错误日志 void Application_Error(object sender, EventArgs e) { // 在 ...
- streamsets 错误记录处理
我们可以在stage 级别,或者piepline 级别进行error 处理配置 pipeline的错误记录处理 discard(丢踢) send response to Origin pipeline ...
- php设置错误,错误记录
//设置错误级别. error_reporting(E_ALL); //显示所有错误 error_reporting(E_ALL&~E_NOTICE); //显示所有错误但不显示提示级别的 ...
- 27:简单错误记录SimpleErrorLog
题目描述 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号. 处理: 1. 记录最多8条错误记录,循环记录,对相同的错误记录(净文件名称和行号完全匹配)只记录一条,错误计数增加: ...
- WebSphere中数据源连接池太小导致的连接超时错误记录
WebSphere中数据源连接池太小导致的连接超时错误记录. 应用连接超时错误信息: [// ::: CST] webapp E com.ibm.ws.webcontainer.webapp.WebA ...
随机推荐
- mysql 8.0 配置文件my.cnf中文注解【转载】
########################################################################### ## my.cnf for MySQL 8.0. ...
- Kafdrop
Kafdrop 是一个用于查看 Kafka 主题和浏览消费者组的 Web UI docker run -d --rm -p 9000:9000 \ -e KAFKA_BROKERCONNECT=hos ...
- python中矩阵切片维数微秒变化
1 前言 使用切片访问矩阵的部分数据(特别是一行或一列数据)时,通常会出现切片维数怎么在瞎变化,以致于不得不用reshape()强制改变维数.在深度学习中,网络对矩阵维数的要求是非常严格的,往往就是这 ...
- Lambda 表达式总结
1 Lambda 表达式简介 Lambda 表达式是 JDK 8 的新特性,主要用于简化匿名内部类的定义,帮助用户方便.高效地书写优雅的代码. Lambda 表达式实现的必须是一个接口,并且接 ...
- Js实用小技巧
Js实用小技巧 这是一份Js实用小技巧,也可以是一份Js挨打小技巧,下面的一系列操作虽然能够在一定程度上使代码更加简洁,但是在缺少注释的情况下会降低可读性,所以需要谨慎使用这些黑魔法. 位元算 取整 ...
- Java I/O 教程(七) DataOutputStream和DataInputStream
Java DataOutputStream Class Java DataOutputStream class 可以以机器无关方式往指定输出流写入Java原始数据类型,例如int, double, l ...
- C++ 多线程的错误和如何避免(10)
线程中的异常可以使用 std::rethrow_exception 抛给主线程 问题分析:一个线程中抛出的异常是没法被另一个线程捕获的.假如我们在主线程中创建一个子线程,子线程中的函数抛出了异常,主线 ...
- win32- 函数运行速度测试
LARGE_INTEGER nFreq, t1, t2; int loop_count = 0; double dt; double time_sum = 0; QueryPerformanceFre ...
- Fpga开发笔记(二):高云FPGA发开发软件Gowin和高云fpga基本开发过程
前言 本篇安装高云的开发软件Gowin,并且描述了一个基于高云fpga的程序的开发环境和完整的下载运行过程. Gowin软件 概述 Gowin 软件是广东高云半导体股份有限公司的 FPGA ...
- 国内如何快速访问GitHub
1.国内如何快速访问gibhub -FQ的方法无非就是用软件,这种就不介绍了 -本次介绍的是修改本地系统主机hosts文件,绕过国内dns解析,达到快速访问github 打开https://tool. ...