Я работаю с DevExpress v24.1 в приложении C# Windows Forms. Я столкнулся с проблемой: в моем отчете DevExpress отображается только одна строка данных, хотя назначенный источник данных содержит несколько строк.
Я подозреваю, что проблема связана со структурой отчета или конфигурацией источника данных, но я не уверен в точной причине.
Что может быть причиной этого и как ее решить?
Здесь показан дизайн отчета DevExpress:
введите изображение описание здесь
Пример источника данных для моих данных:
[
{
"CardNo": "C001",
"CarNo": "CAR-101",
"DriverName": "Ali Hassan",
"FileNo": "123456",
"CreatedDate": "2025-11-22T04:57:24.137",
"AmountViolations": 1000.00
},
{
"CardNo": "C002",
"CarNo": "CAR-102",
"DriverName": "Mohamed Youssef",
"FileNo": "123456",
"CreatedDate": "2025-11-22T04:57:29.183",
"AmountViolations": 1000.00
},
{
"CardNo": "C003",
"CarNo": "CAR-103",
"DriverName": "Ahmed Ibrahim",
"FileNo": "123456",
"CreatedDate": "2025-11-22T04:57:31.36",
"AmountViolations": 1000.00
}
]
Мой код:
private async void BtnPrint_Click(object sender, EventArgs e)
{
var ReportDataSource = await GetCarsOrgs();
XtraReport rptOrgCars = new XtraReport();
rptOrgCars.LoadLayout($@"{Application.StartupPath}\Reports\rptCarsOrg.repx");
rptOrgCars.DataSource = ReportDataSource.ToList();
rptOrgCars.ShowPreviewDialog();
}
public async Task GetCarOrgsReport(string CardNo,string CarNo)
{
var query = from ca in _uow.repOrgCars.Table
join c in _uow.repCars.Table on ca.CardNo equals c.CardNo into carsOrgs
from c in carsOrgs.DefaultIfEmpty()
where (CarNo == null || c.CarNo == CarNo) && (CardNo == null || c.CardNo == CardNo)
select new CarOrgsReport() { CardNo = ca.CardNo, CarNo = c == null ? string.Empty : c.CarNo, DriverName = c.DriverName, CreatedDate = ca.CreationDate, AmountViolations = ca.AmountViolations, FileNo = ca.FileNo };
var Result = await Task.Run(() => query.ToList());
// foreach (var result in Result)
// result.Duration = result.SourceActionDate == null || result.TargetActionDate == null ? string.Empty : result.TargetActionDate.Value.Subtract(result.SourceActionDate.Value).ToString(@"dd\:hh\:mm\:ss");
return Result;
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... ata-source
Почему в отчете DevExpress отображается только одна строка, несмотря на то, что источник данных многострочный? ⇐ C#
Место общения программистов C#
1764058416
Anonymous
Я работаю с DevExpress v24.1 в приложении C# Windows Forms. Я столкнулся с проблемой: в моем отчете DevExpress отображается только одна строка данных, хотя назначенный источник данных содержит несколько строк.
Я подозреваю, что проблема связана со структурой отчета или конфигурацией источника данных, но я не уверен в точной причине.
Что может быть причиной этого и как ее решить?
Здесь показан дизайн отчета DevExpress:
введите изображение описание здесь
Пример источника данных для моих данных:
[
{
"CardNo": "C001",
"CarNo": "CAR-101",
"DriverName": "Ali Hassan",
"FileNo": "123456",
"CreatedDate": "2025-11-22T04:57:24.137",
"AmountViolations": 1000.00
},
{
"CardNo": "C002",
"CarNo": "CAR-102",
"DriverName": "Mohamed Youssef",
"FileNo": "123456",
"CreatedDate": "2025-11-22T04:57:29.183",
"AmountViolations": 1000.00
},
{
"CardNo": "C003",
"CarNo": "CAR-103",
"DriverName": "Ahmed Ibrahim",
"FileNo": "123456",
"CreatedDate": "2025-11-22T04:57:31.36",
"AmountViolations": 1000.00
}
]
Мой код:
private async void BtnPrint_Click(object sender, EventArgs e)
{
var ReportDataSource = await GetCarsOrgs();
XtraReport rptOrgCars = new XtraReport();
rptOrgCars.LoadLayout($@"{Application.StartupPath}\Reports\rptCarsOrg.repx");
rptOrgCars.DataSource = ReportDataSource.ToList();
rptOrgCars.ShowPreviewDialog();
}
public async Task GetCarOrgsReport(string CardNo,string CarNo)
{
var query = from ca in _uow.repOrgCars.Table
join c in _uow.repCars.Table on ca.CardNo equals c.CardNo into carsOrgs
from c in carsOrgs.DefaultIfEmpty()
where (CarNo == null || c.CarNo == CarNo) && (CardNo == null || c.CardNo == CardNo)
select new CarOrgsReport() { CardNo = ca.CardNo, CarNo = c == null ? string.Empty : c.CarNo, DriverName = c.DriverName, CreatedDate = ca.CreationDate, AmountViolations = ca.AmountViolations, FileNo = ca.FileNo };
var Result = await Task.Run(() => query.ToList());
// foreach (var result in Result)
// result.Duration = result.SourceActionDate == null || result.TargetActionDate == null ? string.Empty : result.TargetActionDate.Value.Subtract(result.SourceActionDate.Value).ToString(@"dd\:hh\:mm\:ss");
return Result;
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79829420/why-does-devexpress-report-only-display-one-row-despite-multi-row-data-source[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия