Почему бы и нет? Измените тип возвращаемого значения на string
и верните сгенерированное вами значение. Еще несколько вещей, которые вы должны отметить здесь,
- Выполнение SQL-запроса: - Вы выбрали худший метод для выполнения запроса. Используйте параметризацию для выполнения таких составных запросов.
- Используйте вместо
StringBuilder
для строки
Модифицированный метод будет выглядеть следующим образом:
private string Method(string person)
{
StringBuilder htmlBuilder = new StringBuilder();
string querySql ="SELECT [tools] FROM Equipment WHERE owner = @person";
using (SqlCommand cmdSql = new SqlCommand(querySql, conObject))
{
cmdSql.Parameters.Add("@person", SqlDbType.VarChar).Value = person;
using (SqlDataReader reader = cmdSql.ExecuteReader())
{
htmlBuilder.Append("<h2>"+ person +",</h2>");
while (reader.Read())
{
htmlBuilder.Append("<p>"+ reader[tools].ToString() +"</p><br />");
}
}
}
return htmlBuilder.ToString();
}
В методе Calling вы также можете использовать stringBuilder вместо строки и, следовательно, избежать непрерывного изменения текста innetHtml. Изменения в вызывающем методе таковы:
StringBuilder innerHtml = new StringBuilder();
foreach (string person in names)
{
innerHtml.Append(Method(person));
}
Sample.InnerHtml = innerHtml.ToString();