天天看點

ASPNETCORE MVC 5 使用坑點記錄

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>();