2016-09-09 3 views
0

В моем проекте WPF используются Crystal Reports. Все работает в развитии; отчет загружается и отображается, и с DataSet ничего не происходит. Следующий код вызывает отклик:Отчет отображает пустую страницу на клиентской машине

ReportDocument report = new ReportDocument(); 
    report.Load("../../CrystalReport.rpt"); 
    CustomerLedgerDataSet ds = new CustomerLedgerDataSet(); 
    DataTable dt1 = ds.BillProduct; 
    DataTable dt2 = ds.Customer; 
    foreach (var item in customer.CustomerCollection) 
    { 
     dt2.Rows.Add(item.Customerid, item.CustomerName, item.CustomerLocation, 
        item.Customerbalance, item.CustomerLastTally, item.Customerphone); 
    } 
    report.SetDataSource(ds); 
    crystalReportsViewer2.ViewerCore.ReportSource = report; 

Это работает в разработке, но не при развертывании на ПК клиента. Средство просмотра отчетов отображается, но с пустым отчетом. Виновником эта линия, потому что она не может работать путь:

report.Load("../../CrystalReport.rpt");

enter image description here enter image description here

я нажимаю один раз опубликовать для развертывания и установил ту же версию Кристал исполнения на клиентском ПК ,

+0

Вы копируете ваши рецензии DLL? Righ нажмите на ссылку и выберите свойство. В локальном поле copy выберите true. –

+0

Они уже верны, особенно для кристаллических отчетов –

ответ

1

Избегайте использования большого количества папок: попытка скопировать вам отчет в папку проекта. переместите его из папки отчета так, как этот путь

report.Load("~/CrystalReport.rpt")