LINQの "SQL Like"メソッドへの道を模索している私のように、このようにひっくり返った人々のために、私は非常にうまく機能しているものを持っています。
列の照合順序を変更する方法でデータベースを変更できない場合があります。そのため、LINQでその方法を見つける必要があります。
SqlFunctions.PatIndex実際のSQL LIKE演算子と同様に機能するヘルパーメソッドwitch を使用しています。
最初に、次のようなものを得るために、検索値ですべての可能な発音区別符号(今学んだ単語)を列挙する必要があります。
déjà     => d[éèêëeÉÈÊËE]j[aàâäAÀÂÄ]
montreal => montr[éèêëeÉÈÊËE][aàâäAÀÂÄ]l
montréal => montr[éèêëeÉÈÊËE][aàâäAÀÂÄ]l
そして、LINQで例:
var city = "montr[éèêëeÉÈÊËE][aàâäAÀÂÄ]l";
var data = (from loc in _context.Locations
                     where SqlFunctions.PatIndex(city, loc.City) > 0
                     select loc.City).ToList();
だから私のニーズのために私はヘルパー/拡張メソッドを書きました 
   public static class SqlServerHelper
    {
        private static readonly List<KeyValuePair<string, string>> Diacritics = new List<KeyValuePair<string, string>>()
        {
            new KeyValuePair<string, string>("A", "aàâäAÀÂÄ"),
            new KeyValuePair<string, string>("E", "éèêëeÉÈÊËE"),
            new KeyValuePair<string, string>("U", "uûüùUÛÜÙ"),
            new KeyValuePair<string, string>("C", "cçCÇ"),
            new KeyValuePair<string, string>("I", "iîïIÎÏ"),
            new KeyValuePair<string, string>("O", "ôöÔÖ"),
            new KeyValuePair<string, string>("Y", "YŸÝýyÿ")
        };
        public static string EnumarateDiacritics(this string stringToDiatritics)
        {
            if (string.IsNullOrEmpty(stringToDiatritics.Trim()))
                return stringToDiatritics;
            var diacriticChecked = string.Empty;
            foreach (var c in stringToDiatritics.ToCharArray())
            {
                var diac = Diacritics.FirstOrDefault(o => o.Value.ToCharArray().Contains(c));
                if (string.IsNullOrEmpty(diac.Key))
                    continue;
                //Prevent from doing same letter/Diacritic more than one time
                if (diacriticChecked.Contains(diac.Key))
                    continue;
                diacriticChecked += diac.Key;
                stringToDiatritics = stringToDiatritics.Replace(c.ToString(), "[" + diac.Value + "]");
            }
            stringToDiatritics = "%" + stringToDiatritics + "%";
            return stringToDiatritics;
        }
    }
この方法を強化する提案がありましたら、お聞かせください。
               
              
5への投票があります。sql-likeを同義語として提案するようにお願いできますか?