StringBuilder 在 ForEach 循环下不工作
StringBuilder Is not working When its under ForEach loop
这里我有一些名字但是名字没有绑定到 String Builder
var x=from n in d.Employee
Where n.EmpId==10
select n
foreach (var master in x)
{
StringBuilder sb = new StringBuilder();
StringBuilder abc = new StringBuilder();
sb.Append(master.CANDIDATE_NAME + ",";
abc.Append(sb);
join_Body = new HrEmailsender()
{
Body = "Hi," + abc +
};
请给我解决此问题的提示
您正在每个循环中创建一个新的 stringbuilder (sb, abc),但您只需要一个 stringbuilder,在每个循环中添加一些东西,在循环外创建 stringbuilder:
var x=from n in d.Employee
Where n.EmpId==10
select n
StringBuilder sb = new StringBuilder();
StringBuilder abc = new StringBuilder();
foreach (var master in x)
{
sb.Append(master.CANDIDATE_NAME + ",");
abc.Append(sb);
join_Body = new HrEmailsender()
{
Body = "Hi," + abc +
};
您必须为每个循环在外部声明字符串生成器。
还应在 foreach 循环之后生成消息正文,以便包含所有名称。
var x=from n in d.Employee
Where n.EmpId==10
select n
StringBuilder sb = new StringBuilder();
StringBuilder abc = new StringBuilder();
foreach (var master in x)
{
sb.Append(master.CANDIDATE_NAME + ",");
abc.Append(sb);
}
join_Body = new HrEmailsender()
{
Body = "Hi," + abc.ToString();
};
这里我有一些名字但是名字没有绑定到 String Builder
var x=from n in d.Employee
Where n.EmpId==10
select n
foreach (var master in x)
{
StringBuilder sb = new StringBuilder();
StringBuilder abc = new StringBuilder();
sb.Append(master.CANDIDATE_NAME + ",";
abc.Append(sb);
join_Body = new HrEmailsender()
{
Body = "Hi," + abc +
};
请给我解决此问题的提示
您正在每个循环中创建一个新的 stringbuilder (sb, abc),但您只需要一个 stringbuilder,在每个循环中添加一些东西,在循环外创建 stringbuilder:
var x=from n in d.Employee
Where n.EmpId==10
select n
StringBuilder sb = new StringBuilder();
StringBuilder abc = new StringBuilder();
foreach (var master in x)
{
sb.Append(master.CANDIDATE_NAME + ",");
abc.Append(sb);
join_Body = new HrEmailsender()
{
Body = "Hi," + abc +
};
您必须为每个循环在外部声明字符串生成器。 还应在 foreach 循环之后生成消息正文,以便包含所有名称。
var x=from n in d.Employee
Where n.EmpId==10
select n
StringBuilder sb = new StringBuilder();
StringBuilder abc = new StringBuilder();
foreach (var master in x)
{
sb.Append(master.CANDIDATE_NAME + ",");
abc.Append(sb);
}
join_Body = new HrEmailsender()
{
Body = "Hi," + abc.ToString();
};