Скрипт по выводу информации о файлах

Нужно изменить скрипт для вывода информации по файлам в базе данных. Пытаюсь написать скрипт, который из базы данных на базе devexpress c# выведет информацию о файлах в проекте. Получилось вывести только оглавление проектов и то не всегда выводит. Сразу скажу, что не силен в C#. Строки из за которых бывают ошибки возьму в комментарий.

using Ascon.Pilot.ClientCore.Search;
using Ascon.Pilot.DataClasses;
using System.IO;
using System.Linq;
using System.Collections.Generic;
using Ascon.Pilot.Core;
using Ascon.Pilot.Client.Search;
using Ascon.Pilot.Pilot.Reports;
using System.Xml.Serialization;
using DevExpress.XtraReports.Parameters;

int i = 0;
int j = 0;

string[] FileName = new string[15000];

ReportContext context = new ReportContext();

private void PilotReport_DataSourceDemanded(object sender, System.EventArgs e) 
{
    LongRunning.Start(this, () => {
        var project = Parameters["Project"].Value as RObject;   
        if(project == null)
            throw new Exception("Проект не выбран");
        
        //label3.Text = project.Attributes["project_name"].ToString();
        //if(project.Attributes == null)
            //throw new Exception("Error");
        
        var fileTypes = context.GetTypes().Where(x => x.HasFiles).Select(x => x.Id).ToArray();
        var objectsBuilder = QueryBuilder.CreateObjectQueryBuilder();   
        objectsBuilder.Must(ObjectFields.TypeId.BeAnyOf(fileTypes));
        var objects = context.GetObjects(objectsBuilder, project.Id).ToList(); 
    
        DataSource = objects;
    });
}

private void Detail_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) 
{
    var obj = (RObject)PilotReport.GetCurrentRow();

    LongRunning.Start(this, () => {
        var File = GetFileName(obj);            
    });

    tableCell3.Text = FileName[j];
    j++;
}

private List<string> GetFileName(RObject obj)
{
    List<string> result = new List<string>();
    if(obj == null)
        return result;

    foreach(var file in obj.Files)
    {
            FileName[i]+= file.Name.ToString();
            FileName[i]+= ", ";
    }
    i++;

    return result;
}

Ответы (0 шт):