HtmlEncode列表<string>值</string>

时间:2012-02-20 13:58:02

标签: c# asp.net

我将单元格值保存在List中,就像这样

public List<string> Cell { get; set; }

我想对此列表的每个值执行htmlEncode。 任何人都可以帮我这个吗?

3 个答案:

答案 0 :(得分:2)

Cell = Cell.Select(s => System.Web.HttpUtility.HtmlEncode(s)).ToList();

或  较短:

Cell = Cell.Select(System.Web.HttpUtility.HtmlEncode).ToList();

答案 1 :(得分:2)

您可以使用ConvertAll<T>扩展方法:

Cell = Cell.ConvertAll<string>(s => System.Web.HttpUtility.HtmlEncode(s));

或更短:

Cell = Cell.ConvertAll<string>(System.Web.HttpUtility.HtmlEncode);

答案 2 :(得分:0)

你可以创建一个实现技巧的扩展方法

 public static class MyCustomListMethod
    {
        public static void Add(this IList<string> list, string item,bool htmlEndode){
            list.Add(System.Web.HttpUtility.HtmlEncode(item));
        }
    }

然后

   public static void Main()
        {
            string e = "<p>Test Text<p/>";
            List<string> mylist = new List<string>();
            mylist.Add(e,true);

        }

使用新的扩展方法,您可以将项目添加到已编码的列表中,而不是转换所有这些项目