1、JOSNResult屬性首字母小寫的問題。
在Startup.cs中ConfigureServices 修改配置。
services.AddMvc().AddJsonOptions(options =>
{
////格式化日期時間格式
//options.JsonSerializerOptions.Converters.Add(new DatetimeJsonConverter());
////資料格式首字母小寫
////options.JsonSerializerOptions.PropertyNamingPolicy =JsonNamingPolicy.CamelCase;
//資料格式原樣輸出
options.JsonSerializerOptions.PropertyNamingPolicy = null;
////取消Unicode編碼
//options.JsonSerializerOptions.Encoder = JavaScriptEncoder.Create(UnicodeRanges.All);
////忽略空值
//options.JsonSerializerOptions.IgnoreNullValues = true;
////允許額外符号
//options.JsonSerializerOptions.AllowTrailingCommas = true;
////反序列化過程中屬性名稱是否使用不區分大小寫的比較
//options.JsonSerializerOptions.PropertyNameCaseInsensitive = false;
})
2、EFCORE 5.0 對SQL Server 2008 R2 相容問題
據說從某版本開始EF對SQL Server 2008 R2的相容性不好了,具體應該是想強制讓大家買最新的SQL SERVER 2012及以上版本,功能受限,簡單的查詢使用是沒問題的,當開始制作分頁查詢的時候問題來了。
var list = db.sys_user.Take(limit).Skip((page-1) * limit).ToList();
services.AddDbContext(options => options.UseSqlServer(connection,b=>b.UseRowNumberForPaging()));
optionsBuilder.ReplaceService<IQueryTranslationPostprocessorFactory, SqlServer2008QueryTranslationPostprocessorFactory>();