C# 如何从asp.net(aspx)页面枚举静态类中包含的静态字典
我不明白如何从我的aspx页面循环一个静态类中包含的静态字典。我有这个静态类C# 如何从asp.net(aspx)页面枚举静态类中包含的静态字典,c#,dictionary,static,enumeration,idictionary,C#,Dictionary,Static,Enumeration,Idictionary,我不明白如何从我的aspx页面循环一个静态类中包含的静态字典。我有这个静态类 public static class ErrorCode { public static IDictionary<int, string> ErrorCodeDic; static ErrorCode() { ErrorCodeDic = new Dictionary<int, string>() { {
public static class ErrorCode
{
public static IDictionary<int, string> ErrorCodeDic;
static ErrorCode()
{
ErrorCodeDic = new Dictionary<int, string>()
{
{1, "a problem"},
{2, "b problem"}
};
}
}
您可以像这样在所有对上循环:
foreach( KeyValuePair<int, string> kvp in ErrorCode.ErrorCodeDic)
{
Response.Write(string.Format("Key = {0}, Value = {1}", kvp.Key, kvp.Value));
}
或者,codebehind中没有任何内容,aspx中也没有:
foreach(var error in ErrorCodes) { }
<%@ Import Namespace="MyLibrary.Dictionaries" %>
....Content...
<% foreach(var error in ErrorCode.ErrorCodeDic) { %>
.. something ..
<% } %>
……内容。。。
.. 某物
我明白你的意思,我想做些不同的事情。是否可以在foreach外部定义keyvaluepair kvp,并按照我在“更具体的”@Breadtruck中的描述执行-您可以执行foreach(ErrorCode.ErrorCodeDic.Keys中的int-code){
…这就是你的意思吗?@Breaktruck-仍然不确定我是否理解,你可以添加一个引用是的,像这样:var dict=MyLibrary.Dictionaries.ErrorCode.ErrorCodeDic;
然后执行:foreach(dict中的var kvp){..
我把更具体的部分说得更具体了。我想现在会清楚了,至少我希望如此!嗯,我想我明白了,但是var kvp部分呢?
foreach( KeyValuePair<int, string> kvp in ErrorCode.ErrorCodeDic)
{
Response.Write(string.Format("Key = {0}, Value = {1}", kvp.Key, kvp.Value));
}
public IDictionary<int, string> ErrorCodes = MyLibrary.Dictionaries.ErrorCode.ErrorCodeDic;
foreach(var error in ErrorCodes) { }
<%@ Import Namespace="MyLibrary.Dictionaries" %>
....Content...
<% foreach(var error in ErrorCode.ErrorCodeDic) { %>
.. something ..
<% } %>