先说一下你写的方法的问题
你的方法2你看一下,写的是不正确的猜想你的方法2是想反回List<Dictionary<string, string>>但你方法里写的是
返回List<Dictionary<int, string>>
我写了一个方法
你看一下吧
public static List<Dictionary<T, V>> GetValue<T, V>(string f_ConfigName) { List<Dictionary<T, V>> result = new List<Dictionary<T, V>>(); IEnumerator obj = ConfigurationManager.AppSettings[f_ConfigName].ToString().Split(',').GetEnumerator(); while (obj.MoveNext()) { Dictionary<T, V> o = new Dictionary<T, V>(); o.Add( (T)((object)obj.ToString().Split(',')[0]), (V)((object)obj.ToString().Split(',')[1])); result.Add(o); } return result; }
调用的时候
GetValue<int, string>("First"); GetValue<string, string>("First");
1. AppSettings["First"] 还有Second不同 ,可以加个参数传他们进去。
public List<Dictionary<TKey,TValue>> get(string data)
2. AppSettings["First"] 读取配置文件,即一般不会改变,可以考虑 static 静态化,不用每次用都去读配置。
3. 如果只是获取数据,可以静态化 你要的集合。
static List<Dictionary<int,string>> l1;
static List<Dictionary<string,string>> l2;
static Class1()//静态构造器
{
l1初始化,l2初始化
}
能否写歌完整点得代码??