#asp.net #excel #gridview #data-binding #datasource
Вопрос:
Мне нужно сгенерировать файл excel, однако в этом файле цены на продукты должны быть увеличены на 5%. Это мой код для повышения цен:
foreach (var p in products)
{
p.Price *= 1.05M;
}
Цена-это десятичный тип данных. Вот как я привязываю данные к представлению сетки.
GridView gv = new GridView();
gv.DataSource = products;
gv.DataBind();
Я попробовал отладку — в списке товаров указаны правильные цены, цена правильно увеличена. Однако, когда excel генерирует цену, она всегда равна * 10.
Например, у меня цена продукта 1,93 — в списке продуктов после увеличения значение равно 2,0265, но в Excel показано значение 20,265.
Кто-нибудь, пожалуйста, помогите, у меня нет никаких идей.
Комментарии:
1. Вы помещаете данные в представление сетки, а затем говорите об Excel. Я предполагаю, что вы создаете html-файл из GridView и экспортируете его в файл .xls. Не делай этого. Используйте что-то вроде EPPlus для создания файлов excel.