CAML引擎接受这种可疑的“查询语言”,将暴露的名称/值从架构转换为后端格式,构建适当的SQL查询,然后将整个混乱发送到SQL Server。排序 - 包括不敏感 - 规则是SQL Server的一部分,而不是SharePoint(或CAML引擎)本身(,尽管可能存在微妙的错误;您已被警告!)。
SQL Server支持不同的COLLATIONS(包括一些不区分重音以及“标准”不区分大小写)。 但是,SharePoint在相当有限的“受支持”配置中运行 - 更改排序规则可能不合适。
所有的SharePoint Server所需的数据库使用Latin1_General_CI_AS_KS_WS排序规则。
但是,它可以能够破解适当的SQL表背衬列表与ALTER TABLE并指定一个替代归类如SQL_Latin1_General_Cp1_CI_AI
(AI =不区分重音,AS =区分重音)。 您的里程可能会有所不同:这不是受支持的方案。
另一个选择可能是使用一个项目触发器和代码隐藏来“归一化”所有的值 - 比如说“carlos”。 (这些规范化的值将存储在不同的列中。)代码隐藏可以使用.NET的全部功能来执行此步骤,但也会引入其他复杂性/要求。
快乐编码。
MMM看起来这是唯一的选择。我会尝试正常化选项。谢谢你的提示 – carlos