将字符串转换为system .collection generic list <string> </string>时出错

时间:2014-01-17 11:05:54

标签: c#

public static List<string> Symbols
        {
            get
            {
                return ConfigurationManager.AppSettings["Symbols"];



                string[] sys1 = Sys.Split(',');
                Symbols = new List<string>();
                foreach (string item in sys1)
                {
                    Symbols.Add(item.Trim());

                }
            }
        }
    }
}

1 个答案:

答案 0 :(得分:3)

它返回一个字符串

return ConfigurationManager.AppSettings["Symbols"];

你需要返回List<string>,所以你更愿意这样做:

var Sym = ConfigurationManager.AppSettings["Symbols"];

并在最后添加:

return Symbols;

应该看起来像:

public static List<string> Symbols
{
    get
    {
        var sym = ConfigurationManager.AppSettings["Symbols"];
        return sym.Split(',').Select(x=>x.Trim()).ToList();
    }
}

我通过使用Linq来选择修剪值而不是使用foreach来改进。

原文(已更正)

public static List<string> Symbols
{
    get
    {
        Sys = ConfigurationManager.AppSettings["Symbols"];
        string[] sys1 = Sys.Split(',');
        Symbols = new List<string>();
        foreach (string item in sys1)
        {
            Symbols.Add(item.Trim());

        }
        return Symbols;
    }
}

编辑:

据我了解,您想要返回一个这样的值列表:

public static List<string> Symbols
{
    get
    {
        var sym = ConfigurationManager.AppSettings["Symbols"];
        return new List<string>() { sym };
    }
}