按 EF Core 中 varchar/nvarchar 列值的长度对结果进行排序

Order results by the length of varchar/nvarchar column value in EF Core

如何在 EF Core 中对列值的 长度 设置的结果进行排序?

其中一个实体属性是 barcode,我需要在搜索值可能性不完全匹配时将条形码较短的实体置于列表顶部。

在SQL中:

Select * 
From dbo.Barcodes 
Where BarcodeValue Like '%221%'
Order By Len(BarcodeValue) Asc

如何在 EF Core 中执行此操作?

dbo.Barcodes.Where(x => x.BarcodeValue.Contains("221")).OrderBy(x=> x.BarcodeValue.Length)