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