【发布时间】:2021-04-08 04:41:30
【问题描述】:
我被分配升级一个很久以前创建的 Web 应用程序。在那个项目中,数据库中的数据通过动态列表进行访问、修改和返回。表之间的某些项目的关系不是通过 Id 而是通过它们的标题相关的。它返回给我一个项目列表,其中列标题是由不幸包含重音字母的项目标题分配的。
退货示例
我无法访问这些类型的数据,因为重音字母要么被编码规则禁止,要么有一种方法,但我还不知道如何使用它。我试过下面的代码,用 [] 包围这些字母,但它不起作用。
var maBuonList = list.Select(x => x.["Ẩm_Bã bùn"]).ToList();
我也尝试过不带点的查询,但它返回另一个错误。
var maBuonList = list.Select(x => x["Ẩm_Bã bùn"]).ToList();
错误:
'Cannot apply indexing with [] to an expression of type 'System.Dynamic.ExpandoObject''
没有点的错误
【问题讨论】:
-
x["Ẩm_Bã bùn"]怎么样? -
索引器的使用将是
x["Ẩm_Bã bùn"],而不是x.["Ẩm_Bã bùn"](x之后没有.)。 -
我也试过了。让我用返回的错误更新我的问题。
-
将其转换为字符串,动态事物在提取时需要显式类型
list.Select(x => (string)x["Ẩm_Bã bùn"]).ToList(); -
它返回给我同样的错误。
标签: c# linq asp.net-core