ASP.NET Multipling Gouss Store Store в списке 2 столбцовC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 ASP.NET Multipling Gouss Store Store в списке 2 столбцов

Сообщение Anonymous »

Я новичок в C#, и у меня есть этот код ниже, делая несколько вызовов API. Этот код работает нормально, так как я вижу, что Listresults имеет ответы из каждого вызова.

Код: Выделить всё

List listResults = new();
var listIDs = new List
{
"ID1",
"ID2",
"ID3"
};

string baseURL = $"https://API_URL/id=";
var postTasks = listIDs.Select(p => client.GetStringAsync(baseURL + p));
var posts = await System.Threading.Tasks.Task.WhenAll(postTasks);
foreach (var postContent in posts)
{
listResults.Add(postContent);
Debug.WriteLine(postContent);
}
< /code>
Теперь я хочу сохранить строку ответа в списке 2 столбцов: 1 -й столбец - это ID, а 2 -й столбец - строка ответа. < /p>
Поэтому у меня есть эта модель ответа: < /p>
public class ItemResponseJsonModel
{
public string ID { get; set; }
public string ResponseJSON { get; set; }
}
Затем я попытался реализовать список с моделью в коде ниже, но именно здесь я застрял, как добавить идентификатор в первом столбце в listresults для каждого ответа.

Код: Выделить всё

List listResults = new();
var listIDs = new List
{
"ID1",
"ID2",
"ID3"
};

string baseURL = $"https://API_URL/id=";
var postTasks = listIDs.Select(p => client.GetStringAsync(baseURL + p));
var posts = await System.Threading.Tasks.Task.WhenAll(postTasks);
foreach (var postContent in posts)
{
listResults.Add(postContent);  // This is where the error will say cannot convert string to ItemResponseJsonModel.
Debug.WriteLine(postContent);
}
Я хочу, чтобы окончательные listresults выглядит ниже, где 1 -й столбец - это идентификатор, а 2 -й столбец - строка ответа.

Код: Выделить всё

listResults {
{ ID = "ID1", ResponseJSON = "ResponseJSON" },
{ ID = "ID2", ResponseJSON = "ResponseJSON" },
{ ID = "ID3", ResponseJSON = "ResponseJSON" },
}
< /code>
Как я могу это сделать? Могу ли я сохранить его в словаре  < /code>? Тем не менее, я столкнулся с другой проблемой и, надеюсь, получу некоторую помощь здесь. Почему, поскольку результат иногда имеет несколько страниц, поэтому мне нужно сделать/while, чтобы проверить на последнюю страницу, которая только как строка [] ». 
Task APIGetItemsByID(string ID)
{
int page = 1;
string? API_Key = "The-API-Key"
Task respJSON;
string respContent;
do
{
var client = new HttpClient();
string baseURL = $"https://API_URL/items?pageSize=1000&Page={page}&id=";
client.DefaultRequestHeaders.Add("Authorization", "Basic " + API_Key);
respJSON = client.GetStringAsync(baseURL + ID);
respContent = respJSON.Result;
page++;
} while (respContent != "[]" && page < 10);
return respJSON;
}
Я затем изменил код, чтобы вызвать метод apigetiTemsbyid и вернуть задачу respjson; , но, конечно, у нее есть строка «[]» с конца страницы, и я не делаю ее правильно.

Код: Выделить всё

List listResults = new();
var listIDs = new List
{
"ID1",
"ID2",
"ID3"
};

var postTasks = listIDs
.Select(async p => new ItemResponseJsonModel { ID = p, ResponseJSON = await APIGetItemsByID(p) });
var posts = await System.Threading.Tasks.Task.WhenAll(postTasks);
foreach (var postContent in posts)
{
listResults.Add(postContent);
Debug.WriteLine(postContent);
}
Любая помощь ценится.

Подробнее здесь: https://stackoverflow.com/questions/795 ... -2-columns
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • ASP.NET Multipling Gouss Store Store в списке 2 столбцов
    Anonymous » » в форуме C#
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • ASP.NET Multipling Gouss Store Store в списке 2 столбцов
    Anonymous » » в форуме C#
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • ASP.NET Multipling Gouss Store Store в списке 2 столбцов
    Anonymous » » в форуме C#
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Multipling Shadow Map OpenGL
    Anonymous » » в форуме C++
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • C ++ Шаблон Vardict Multipling Multiply Level Intest для цикла
    Anonymous » » в форуме C++
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»