Не уверен, что я на 100% понимаю ваш вопрос, но, похоже, все, что вам нужно сделать, это либо:
- Запустите полученный код и преобразуйте его в строку
- Измените код на устройства чтения данных и просто передайте его обратно напрямую, не используя DataSets / DataTables.
Чтобы адаптировать код PrimaryKeyChecker и вернуть строку таблиц, вы можете написать что-то вроде этого:
public string RunAnalysis(string localServer, string userName, string password, string selectedDatabase)
{
DataTable dt = GetAllPrimaryKeyTables(localServer, userName, password, selectedDatabase);
StringBuilder sb = new StringBuilder();
foreach (DataRow dr in dt.Rows)
{
sb.AppendLine(dr.IsNull(0) ? "" : dr[0].ToString());
}
return sb.ToString();
}
Однако я бы рекомендовал, по крайней мере, вернуть список, чтобы его можно было легко искать, фильтровать и использовать для представления в пользовательском интерфейсе.
Я прошу прощения, если ясовершенно неправильно понял ваш вопрос.