У меня есть настройка кода, которая сканирует лист Google построчно в поисках текста. Работает отлично. Но, похоже, должен быть более эффективный путь. (Кроме перемещения данных в базу данных mysql)
Есть ли способ сделать выборку, чтобы мне не приходилось сканировать каждую строку? Данные, которые я ищу, будут уникальными. Так что он будет возвращать только одно значение.
Вот код, который я сейчас использую:
var service = new SheetsService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = ApplicationName,
});
// Define request parameters.
String spreadsheetId = "xxxxxxxxxxxxxxxxxxxxxxx";
String range = "Sheet1!A:K";
SpreadsheetsResource.ValuesResource.GetRequest request =
service.Spreadsheets.Values.Get(spreadsheetId, range);
ValueRange response = request.Execute();
IList<IList<Object>> values = response.Values;
if (values != null && values.Count > 0)
{
Console.WriteLine("Name, Team, Age");
try
{
foreach (var row in values)
{
string bcvalue = row[0].ToString();
if (bcvalue == "*" + barcode + "*")
{
// Print columns A, B, C, which correspond to indices 0-2.
Console.WriteLine("{0}, {1}, {2}", row[0], row[1], row[2]);
output = string.Format("{0}, {1}, {2}", row[0], row[1], row[2]);
return output;
}
}
}
catch
{
return "error";
}
}