3.0 更新的内容有
- 更新 .NET 框架
- 替换项目模版的 netcoreapp2.2 到 netcoreapp3.0
- 目前支持的 .NET 框架有: net461, netcoreapp2.0, netcoreapp3.0
- 注意: efcore 3.0 只支持 netcoreapp3.0, 如果使用 net461 则 zkweb 会使用 efcore 2.2 代替
如果没有特殊需求推荐使用 nhibernate,因为它更稳定,并且对旧版本的兼容性更好 - 注意: 如果你更新现有的 ZKWeb (Asp.NET Core) 项目到 netcoreapp3.0,
请替换 Program.cs 中的.UseKestrel()
到.UseKestrel(options => options.AllowSynchronousIO = true)
- 支持插件热加载 (Hot Reload),要求 .NET Core 3.0 以上
- 注意: 开启插件热加载会导致 efcore 的懒加载功能不可用 (参考 efcore 仓库的 #18272)
你可以设置 App_Data/config.json 的 "Extra"."ZKWeb.DisableAutomaticPluginReloading" 为 true 关闭插件热加载 - ZKWeb 的插件热加载并不支持 .NET Framework,因为微软已经放弃了这个框架
- 注意: 开启插件热加载会导致 efcore 的懒加载功能不可用 (参考 efcore 仓库的 #18272)
- 更新依赖组件
- Microsoft.Extensions.DependencyInjection.Abstractions 3.0.0
- Newtonsoft.Json 12.0.2
- System.Drawing.Common 4.6.0
- Microsoft.CodeAnalysis.CSharp 3.3.1
- Microsoft.CSharp 4.6.0
- Microsoft.Extensions.DependencyModel 3.0.0
- Microsoft.Owin 4.0.1
- Dapper 2.0.30
- Dommel 1.11.0
- Dapper.FluentMap 1.8.0
- Dapper.FluentMap.Dommel 1.7.0
- Microsoft.Data.Sqlite 3.0.0
- Npgsql 4.1.0
- MySqlConnector 0.59.1
- Microsoft.EntityFrameworkCore 3.0.0
- Microsoft.EntityFrameworkCore.Design 3.0.0
- Microsoft.EntityFrameworkCore.InMemory 3.0.0
- Microsoft.EntityFrameworkCore.Sqlite 3.0.0
- Microsoft.EntityFrameworkCore.SqlServer 3.0.0
- Microsoft.EntityFrameworkCore.Proxies 3.0.0
- Npgsql.EntityFrameworkCore.PostgreSQL 3.0.0
- Pomelo.EntityFrameworkCore.MySql 2.2.0
- MongoDB.Driver 2.9.2
- NHibernate 5.2.6
- MySql.Data 6.10.9
- System.Data.SQLite 1.0.111