Передача каждой строки файла JSON в циклеC#

Место общения программистов C#
Anonymous
Передача каждой строки файла JSON в цикле

Сообщение Anonymous »

Мне нужно передать файл JSON поставщику, и поставщик возвращает токен, когда я передаю файл JSON. Для этого у меня есть следующий класс:

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

public class PayParam
{
public LineItemParam[] LineItems { get; set; }
public string Phone { get; set; }
public string Email { get; set; }
public string CustomerId { get; set; }
public string CompanyName { get; set; }
}

public class LineItemParam
{
public string Sku { get; set; }
public string Description { get; set; }
public decimal UnitPrice { get; set; }
public int Quantity { get; set; }
}
Я создаю JSON, передавая значения в класс следующим образом:

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

 var parameters = new PayParam();
MailingInfo IdData = scData.FindData();

string[] desc = {"Test1", "Test2", "Test3};
parameters = new PayParam
{
Phone = IdData.PhoneNumber,
Email = IdData.Email.ToUpper(),
CustomerId = "1234",
CompanyName = "TEST NAME",
},
LineItems = new LineItemParam[]
{
new LineItemParam
{
Sku = GetSKU(),
Description = "Test Desc",
UnitPrice =  12.00,
Quantity = 1
}
}
Проблема в том, что мне нужно передать несколько строк для каждого описания, поэтому мне нужно сделать что-то вроде этого:

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

parameters = new PayParam
{
Phone = IdData.PhoneNumber,
Email = IdData.Email.ToUpper(),
CustomerId = "1234",
CompanyName = "TEST NAME",
},
foreach(var de in desc)
{
LineItems = new LineItemParam[]
{
new LineItemParam
{
Sku = GetSKU(),
Description = de,
UnitPrice =  12.00,
Quantity = 1
}
}

}
Приведенный выше код не работает, выдает синтаксическую ошибку. Это сработает, только если я поставлю отдельную позицию вот так:

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

parameters = new PayParam
{
Phone = IdData.PhoneNumber,
Email = IdData.Email.ToUpper(),
CustomerId = "1234",
CompanyName = "TEST NAME",
},

LineItems = new LineItemParam[]
{
new LineItemParam
{
Sku = GetSKU(),
Description = "Test1",
UnitPrice =  12.00,
Quantity = 1
},
new LineItemParam
{
Sku = GetSKU(),
Description = "Test2",
UnitPrice =  12.00,
Quantity = 1
},

}
Я хочу передавать эти строки в цикле, а не записывать их по отдельности.
Буду признателен за любую помощь.

Подробнее здесь: https://stackoverflow.com/questions/790 ... -in-a-loop

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