- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想做的是拥有一个项目方面的静态字典,这样我就可以从代码中的任何位置访问单个列表。
直到现在,我想出了这个解决方案,一个具有公共(public)属性的公共(public)静态类:
public static class Common
{
public static StringDictionary Domains
{
get
{
StringDictionary list = new StringDictionary();
list.Add("212", "Location A");
list.Add("555", "Location B");
list.Add("747", "Location C");
list.Add("000", "Location D");
return list;
}
}
}
我以这种方式使用(我用它来替换 gridview 中单元格的内容):
if (Common.Domains.ContainsKey(e.Row.Cells[5].Text))
{
e.Row.Cells[5].Text = Common.Domains[e.Row.Cells[5].Text];
}
else
{
e.Row.Cells[5].Text = "n/a";
}
但我不知道这是否是一个有效的解决方案,和/或是否有其他(更好的)方法来做到这一点......有人可以给出提示吗?
提前致谢,安德里亚。
最佳答案
您可能不希望每次访问属性时都重新创建列表。将构造移动到静态构造函数中:
public static class Common
{
private static StringDictionary _domains;
static Common()
{
_domains = new StringDictionary();
_domains.Add("212", "Location A");
_domains.Add("555", "Location B");
_domains.Add("747", "Location C");
_domains.Add("000", "Location D");
}
public static StringDictionary Domains
{
get
{
return _domains;
}
}
}
你应该知道,返回的字典不是只读的。因此此类的客户端可以修改集合(例如添加/删除一些条目)。
关于c# - StringDictionary 作为一个普通的静态列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/756723/
我想做的是拥有一个项目方面的静态字典,这样我就可以从代码中的任何位置访问单个列表。 直到现在,我想出了这个解决方案,一个具有公共(public)属性的公共(public)静态类: public sta
我创建了以下内容以将一些数据公开为正则表达式匹配字符串和 StringDictionary。感觉我可以用更少的行数使用 LINQ 来做到这一点。 private const string STREET
我创建了一个类型为“System.Collections.Specialized.StringDictionary”的用户范围设置。每当我打开本地设置时,我都可以在配置中看到它,但它是空的。 我有其他
我正在使用 StringDictionary 集合来收集键值对。 例如: StringDictionary KeyValue = new StringDictionary(); KeyValue.Ad
我正在尝试创建一个类型为 StringDictionary 的新属性,但是当我像 stringdictionary 变量一样使用该属性时,出现错误。 目标是不使用变量,我需要为此使用属性。在幕后,我将
按值(而非键)顺序对 StringDictionary 进行排序(或迭代)的“最佳”方法是什么 例如键-值 1 - X 标签 2 - 一个标签 3 - 其他标签 会给 2 - 一个标签 3 - 其他标
有谁知道 System.Collections.Specialized.StringDictionary 对象和 System.Collections.Generic.Dictionary 之间的实际
我想知道 .NET 是否提供任何标准功能来通过列表或字典对象进行前缀搜索。我遇到了 StringDictionary,但不知道它是否可以为我做到这一点。 如果它可以进行前缀搜索,它是否也可以进行子字符
如果这是一个愚蠢的问题,我深表歉意,但请听我说完: Dictionary genericDict = new Dictionary; genericDict.Add("blah", "bloop");
这个问题在这里已经有了答案: StringDictionary vs Dictionary (7 个答案) 关闭 9 年前。 System.Collections.Specialized 包含 St
我是一名优秀的程序员,十分优秀!