#asp.net #sql-server
#asp.net #sql-сервер
Вопрос:
Надеюсь, это быстрое решение, но я не могу разобраться в этом (я новичок), у меня есть этот фрагмент кода на C #, который отправляет данные до Stripe checkout, это отлично работает, вопрос в том, как я могу SessionLineItemOptions
динамически заполнять данные из базы данных?
protected void Page_Load(object sender, EventArgs e)
{
StripeConfiguration.ApiKey = "";
var options = new SessionCreateOptions
{
SuccessUrl = "http://localhost:51835/secure/success.aspx?id={CHECKOUT_SESSION_ID}",
CancelUrl = "http://localhost:51835/secure/cancel.aspx",
PaymentMethodTypes = new List<string>{
"card",
},
Mode = "payment",
LineItems = new List<SessionLineItemOptions> {
//getDataFromDataBase().ToList();
new SessionLineItemOptions{
Name = "Product 1",
Amount = 4999,
Currency = "gbp",
Quantity = 1
},
new SessionLineItemOptions{
Name = "Product 2",
Amount = 12550,
Currency = "gbp",
Quantity = 1
},
new SessionLineItemOptions{
Name = "Product 3",
Amount = 9999,
Currency = "gbp",
Quantity = 1
},
},
};
var service = new SessionService();
Session session = service.Create(options);
sessionId = session.Id;
}
Я попробовал это, чтобы вернуть информацию о продукте, но здесь я застрял, помощь очень ценится.
public List<string> getDataFromDataBase()
{
List<string> result = new List<string>();
using (SqlConnection con = new SqlConnection("connectionStringHere"))
{
con.Open();
DataTable tap = new DataTable();
new SqlDataAdapter("SELECT * FROM mytable WHERE id = 'ABCDEFG'", con).Fill(tap);
result = tap.Rows.OfType<DataRow>().Select(dr => dr.Field<string>("name")).ToList();
}
return result;
}
Комментарии:
1. Лучше, если вы потратите немного своего времени на изучение простого ORM, такого как Dapper, и вся эта боль при преобразовании строк с данными в ваши объекты исчезнет. Вы можете найти его здесь github.com/StackExchange/Dapper