আমি পড়েছি যে কেস-সংবেদনশীল স্ট্রিং তুলনা সম্পাদনের জন্য টুপার এবং টোলভার ব্যবহার করা বুদ্ধিমানের নয়, তবে লিনিক-টু-এসকিউএল করার সময় আমি কোনও বিকল্প দেখতে পাচ্ছি না। স্ট্রিং.কম্পিয়ারের উপেক্ষা কেস এবং তুলনাআপনি যুক্তিগুলি লিনিকিউ-টু-এসকিউএল দ্বারা উপেক্ষা করা হয় (আপনি যদি কেস-সংবেদনশীল ডাটাবেস ব্যবহার করেন তবে আপনি কেস-সংবেদনশীল তুলনা জিজ্ঞাসা করলেও আপনি কেস-সংবেদনশীল তুলনা পাবেন)। ToLower বা ToUpper এখানে সেরা বিকল্প? এক অন্য চেয়ে ভাল? আমি ভেবেছিলাম যে আমি কোথাও পড়েছি যে টুপার ভাল ছিল, তবে আমি জানি না যে এটি এখানে প্রযোজ্য কিনা। (আমি প্রচুর কোড রিভিউ করছি এবং প্রত্যেকে টোলওয়ার ব্যবহার করছে।)
Dim s = From row In context.Table Where String.Compare(row.Name, "test", StringComparison.InvariantCultureIgnoreCase) = 0
এটি এমন একটি এসকিউএল কোয়েরিতে অনুবাদ করে যা কেবল সারিটির তুলনা করে। নামটিকে "পরীক্ষার" সাথে তুলনা করে এবং কেস-সংবেদনশীল ডাটাবেসে "টেস্ট" এবং "টেস্ট" ফিরিয়ে দেয় না।
LINQQuery.Contains("VaLuE", StringComparer.CurrentCultureIgnoreCase)
এবংLINQQuery.Except(new string[]{"A VaLUE","AnOTher VaLUE"}, StringComparer.CurrentCultureIgnoreCase)
। Wahoo!