В двух словах, .rdlc
- это версия клиента.Вы не можете разместить их на сервере отчетов.Эти отчеты не знают, как получить данные, вы ДОЛЖНЫ получить данные самостоятельно и передать их в отчет.По этой причине вы не можете даже просмотреть отчет во время разработки.ReportViewer.ProccessingMode = Local
Отчеты .rdl
или сервера знают, как получить данные.Вы настраиваете источник данных и загружаете их на сервер отчетов.Благодаря этому вы можете просматривать отчеты при их разработке.Вы можете использовать элемент управления ReportViewer в Интернете / на рабочем столе для запуска отчетов из своего приложения ... как прокси-сервер между приложением и сервером отчетов. ReportViewer.ProccessingMode = Remote
Я предпочитаю rdl
для любого источника данных sqlно rdlc
также подходит для случаев, когда ваш источник данных очень сложен или может быть собран только с помощью кода приложения.Я думаю, что могут быть способы настройки источника данных объекта для rdl
, но я еще не рассматривал это.