#c# #.net #asp.net #report
#c# #.net #asp.net #Сообщить
Вопрос:
Я хочу отобразить данные таблицы. И я не могу отобразить вместо полей-id их значение из таблицы, на которую они ссылаются.
Я добавляю новый элемент — Reportint-> Отчет (*.rdcl), а затем добавить в веб-форму ReportViewer. ПРОТИВ dispayed wizard и я добавляю новый набор данных, где выбираю свой бизнес-метод для выбора данных.
У меня есть обитатели таблицы, в которой содержится поле FacultyID, но я хочу видеть значение из связанной таблицы, в которой обитает.FacultyID == Факультет.FacultyID.
public List<Inhabitant> SelectAllWithoutParameters()
{
using (DataContext dc = Infrastructure.DataContext)
{
DataLoadOptions options = new DataLoadOptions();
options.LoadWith<Inhabitant>(u => u.Faculty);
dc.LoadOptions = options;
List<Inhabitant> inhs = dc.GetTable<Inhabitant>().OrderBy(u => u.FullName).ToList();
return inhs;
}
}
Нажмите Вставить — Новая таблица. Я могу выбрать все поля от жителя, но не от факультета.
Как решить эту проблему
Ответ №1:
Я ничего не знаю об отчетах rdcl, но я бы создал новый класс для проецирования данных, что-то вроде Residentantreport.
Затем вы просто меняете эту строку:
List<Inhabitant> inhs = dc.GetTable<Inhabitant>().OrderBy(u => u.FullName).ToList();
к чему-то вроде этого:
List<InhabitantReport> inhs = dc.GetTable<Inhabitant>().OrderBy(u => u.FullName).Select(r=>new InhabitantReport()
{
//Populate data.
}).ToList();