![](/img/trans.png)
[英]StringComparer.InvariantCultureIgnoreCase for char
[英]C# Dictionary with StringComparer.InvariantCultureIgnoreCase giving error while trying to add case insensitive key
嘗試代碼,
using System;
using System.Collections.Generic;
public class Program
{
public static void Main()
{
Dictionary<string, object> paramList = new Dictionary<string, object>(StringComparer.InvariantCultureIgnoreCase);
paramList.Add("LastUpdatedByUserName", "123");
paramList.Add("LastUpdatedbyUserName", "124");
Console.WriteLine(paramList["LastUpdatedbyUserName"]);
}
}
這給了我一個錯誤說,
Run-time exception (line 11): An item with the same key has already been added.
當心,在您的例子還有的按鍵時LASTUPDATED略有區別B
yUserName和LASTUPDATED b
yUserName
構造函數需要一個IEqualityComparer
,它告訴字典如何比較鍵。
StringComparer.InvariantCultureIgnoreCase
為您提供了一個IEqualityComparer
實例,它以不區分大小寫的方式比較字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.