我有一组字符串,其中包含一些转义字符。在我可以使用它之前,我需要取消字符串的集合。不幸的是,HttpUtility.HtmlDecode似乎不适用于传递给下面方法的集合。奇怪的是,我创建一个单独的控制台应用程序来测试它确实有效。有任何想法吗?
private void UpdateTaxonomyTerms(TaxonomywebserviceSoapClient taxWebService, string termStoreId, string termSetId, List<string> TermsList)
{
string TermsXML = GetTermSet(taxWebService, termStoreId, termSetId);
XDocument xDoc = XDocument.Parse(TermsXML);
for (int i = 0; i < TermsList.Count; i++) {
string UnescapedTermToFind = HttpUtility.HtmlDecode(TermsList[i].ToString());
Console.WriteLine(UnescapedTermToFind);
string TermGuid = FindTerm(xDoc, UnescapedTermToFind);
TermsList[i] = string.Concat(UnescapedTermToFind, "|", TermGuid);
}
}
答案 0 :(得分:0)
你可以用一行代替
string result = string.Join("|",
TermsList.Select (term =>
FindTerm(xDoc, System.Web.HttpUtility.HtmlDecode(term))));
但是,它只是语法糖,坦率地说,你的循环可能同样容易阅读。