从列表中获取字符串<t>

CSC*_*CSC 2 c#

我正在寻找使用linq/lambda表达式编写以下代码的更好方法.

我想从列表中形成一个字符串.我有将t转换为字符串的函数.所以我想要的是从列表中有一个字符串.

这是伪代码:

  string strTemp;

  foreach (SearchTerm s in terms)
  {
    strTemp +=  string.Format(" and {0} ", s.CreateToString());
  }
Run Code Online (Sandbox Code Playgroud)

其中term是list <searchTerms>.

SLa*_*aks 8

像这样:

string temp = String.Join(" and ", terms.Select(s => s.CreateString()));
Run Code Online (Sandbox Code Playgroud)

如果您不使用.Net 4.0,则需要添加.ToArray().

如果你ToString在每个方法上调用方法term(而不是另一种方法)并且你使用的是.Net 4.0,那么你可以简单地写一下

string temp = String.Join(" and ", terms);
Run Code Online (Sandbox Code Playgroud)