ef8 Contains 查詢條件 報錯 $ 附近錯誤

滢枫發表於2024-03-28

var info = new List<string>();

ef 查詢語句

query.Where(x => info .Contains(x.Barcode))

報錯 $ 附近錯誤

這是 ef 為了相容 ,把查詢語句轉成了 類似下方語句

where barcode in( SELECT 1
    FROM OpenJson(@__names_0) AS)

解決方法: 重點是新增 o => o.UseCompatibilityLevel(120) 相容2014資料庫

builder.Services.AddDbContext<BaseDbContext>(option =>
{
option.UseSqlServer(builder.Configuration.GetConnectionString("BaseDbContext"), o => o.UseCompatibilityLevel(120));
});




相關文章